忍者ブログ
2009/12/12作成
  • « 2025.04.
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • »
[PR]
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。

.NETのアセンブリについて

.NETが出る以前


.NETが出る以前は、COMを使っていて、
アプリケーションで使用するdllファイルは、
レジストリにパスが書かれていた。

.NETが出てから


.NETになってから、アセンブリ(dllやexe)の管理機能を強化された。
これによりアセンブリを検索が可能になり、レジストリが必要なくなった。

検索タイミングは、アプリケーションの起動時で、
検索の処理は、以下の順序で行う。
1.GAC(グローバルアセンブリキャッシュ)
2.アプリケーション構成ファイルに記載のある場所

2にはさらにいくつかの検索項目があるけど、
そこはmsdnを参照。

わかったこと


.NETではインストールはXCOPYでいいってこと。

xcopy /I /S <配置元パス> <配置先パス>


参考文献⇒6. アプリケーションの実行までの流れ
PR
Oracle Coherenceが動かない

状況


前回と同じように、別のPCで環境を作ろうとしたら、Oracle Coherenceが動いてくれない・・・

動かないというのは、どういう状況かといいますと、cache-server.cmd と coherence.cmd を同時に起動できない。
さらにいうなら、先に起動したほうは正常に動作するが、後に起動したほうはエラーをはく。

cache-server.cmdを先に起動し、後でcoherence.cmdを起動した場合のエラーは以下のとおり。
Oracle Coherence: The Manifest is corrupted or inaccessible; some functionality may be disabled
2011-02-24 13:24:07.165/0.234 Oracle Coherence n/a  (thread=main, member=n/a): Loaded operational configuration from "jar:file:/C:/oracle/Middleware/coherence3.6/coherence/lib/coherence.jar!/tangosol-coherence.xml"
2011-02-24 13:24:07.165/0.234 Oracle Coherence n/a  (thread=main, member=n/a): Loaded operational overrides from "jar:file:/C:/oracle/Middleware/coherence3.6/coherence/lib/coherence.jar!/tangosol-coherence-override-dev.xml"
2011-02-24 13:24:07.165/0.234 Oracle Coherence n/a  (thread=main, member=n/a): Optional configuration override "/tangosol-coherence-override.xml" is not specified
2011-02-24 13:24:07.165/0.234 Oracle Coherence n/a  (thread=main, member=n/a): Optional configuration override "/custom-mbeans.xml" is not specified

Oracle Coherence Version n/a Build n/a
 Grid Edition: Development mode
Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.

2011-02-24 13:24:07.337/0.406 Oracle Coherence GE n/a  (thread=main, member=n/a): Loaded cache configuration from "jar:file:/C:/oracle/Middleware/coherence3.6/coherence/lib/coherence.jar!/coherence-cache-config.xml"
2011-02-24 13:24:07.680/0.749 Oracle Coherence GE n/a  (thread=main, member=n/a): TCMP bound to /192.168.11.130:8090 using SystemSocketProvider
2011-02-24 13:24:38.350/31.419 Oracle Coherence GE n/a  (thread=Cluster, member=n/a): This Member(Id=0, Timestamp=2011-02-24 13:24:07.711, Address=192.168.11.130:8090, MachineId=25474, Location=site:xxxxx,machine:xxxxx,process:5588, Role=Main2Main2) has been attempting to join the cluster at address 224.3.6.0:36000 with TTL 4 for 30 seconds without success; this could indicate a mis-configured TTL value, or it may simply be the result of a busy cluster or active failover.
2011-02-24 13:24:38.350/31.419 Oracle Coherence GE n/a  (thread=Cluster, member=n/a): Received a discovery message that indicates the presence of an existing cluster that does not respond to join requests; this is usually caused by a network layer failure:
Message "SeniorMemberHeartbeat"
  {
  FromMember=Member(Id=1, Timestamp=2011-02-24 13:23:49.364, Address=192.168.11.130:8088, MachineId=25474, Location=site:basic,machine:ohhara,process:1168, Role=CoherenceServer)
  FromMessageId=0
  Internal=false
  MessagePartCount=1
  PendingCount=0
  MessageType=17
  ToPollId=0
  Poll=null
  Packets
    {
    [000]=Broadcast{PacketType=0x0DDF00D2, ToId=0, FromId=1, Direction=Incoming, ReceivedMillis=13:24:38.350, MessageType=17, ServiceId=0, MessagePartCount=1, 


原因


結論からいうと、ウィルスセキュリティソフトのファイアウォールに引っかかってました・・・
引っ掛けるなら、両方引っ掛けてくれ、わかりにくすぎるって。
javaのバージョン、javaのインストールパスの半角問題、設定ファイルなど色々調べて、半日かかってしまった。
Windows7 で Flash Builder 4 インストール失敗、アンインストールできない

Could not find the main class: Program will exit


Flash Builder 4をインストールしようとしたら、正常に完了で着なかった模様。
アンインストールしようとしたら、「Could not find the main class: Program will exit」が発生。

仕方がないので、再度インストーラを起動し、インストールを試みた。
が、これも失敗・・・。

原因判明


色々調べた結果、インストーラ起動後に展開されるフォルダC:\Users\[ユーザ名]\AppData\Local\Temp\Adobe Flash Builder 4 Pluginに問題があった模様(ちなみにAppDataフォルダは隠しフォルダ)。

初回のインストーラ起動で、展開に失敗していた。何度インストーラを起動しても、初回に展開されたファイルを使用するため、失敗が続いたようだ。

解決方法


展開フォルダを削除後、インストーラを起動する。

補足


インストーラの起動は、インストーラを右クリック>「管理者として実行」で行う。
JavaプログラムからOracle Coherenceにアクセス
JavaのプログラムからOracle Coherenceに入出力するサンプル。
  • Oracle Coherenceのlibフォルダにある、coherence.jarをビルドパスに追加する

  • キャッシュサーバを起動する

  • プログラムの作成

    import com.tangosol.net.CacheFactory;
    import com.tangosol.net.NamedCache;

    public class Main {
    public static void main(String args[]) {
    try {
    NamedCache cache = CacheFactory.getCache("test");
    cache.put("aaa", "bbb");
    Object value = cache.get("aaa");
    System.out.println(value);
    } catch (Exception ex) {
    System.out.println(ex);
    }
    }
    }
  • Oracle Coherence 使ってみた

    ダウンロード


    Oracleからダウンロードする(ユーザ登録が必要)。

    インストール


    ダウンロードしたzipファイルを解凍後、c:\coherenceに配置する。

    設定


    環境変数にJAVA_HOMEを追加する。

    稼動確認


    キャッシュサーバの起動


    C:\coherence\bin\cache-server.cmdを実行し、キャッシュサーバを起動する。

    データの入出力


    C:\coherence\bin\coherence.cmdを実行し、「Map (?)」と出たら、下記のコマンドを実行する。































    Noコマンド意味
    1cache test使用するキャッシュの指定
    2push aaa bbbキャッシュにデータを入力
    3get aaaキャッシュからキーaaaの値を取得
    4push aaa cccキャッシュのキーがaaaの値をbbbからcccに変更
    5remove aaaキャッシュからキーがaaaのデータを削除

    Powered by [PR]
    / Design by sky hine / PR:忍者ブログ