人気ブログランキング |

WebLogicで組み込みEJBコンテナ

が使いたかったけど動かなかった




組み込みEJBコンテナについては有志のエントリを参照。


たとえばglassfishなら、

・glassfish-embedded-all-x.x.jar
・javax.ejb-api.jar

あたりを使って、

Map props = ...
final EJBContainer container = EJBContainer.createEJBContainer(props);

とかしてhogeでpiyoでフンガー!って感じで動かせたんだけれど、
weblogicは、よう分からんかったので、メモしときます。






方法の基本は同じっぽい。


1.ライブラリの設定
${WLのHOME}\server\lib あたりにある weblogic.jar を buildpath に import する。
(Eclipse使いなのでNBとかIJ使ってる方はそれなりアレしてください)


2.呪文を唱える
final EJBContainer ec = EJBContainer.createEJBContainer();
final Context context = ec.getContext();

MyBean b = (MyBean) context.lookup("java:global/bin/MyBean");
b.execute();


3.動かない
weblogic ExecuteThread: 1 for queue: weblogic.kernel.Default (self-tuning)
(なんか似たようなメッセージがいっぱいでる)



4.ファー










なんかよく見ると、メモリが足りないっぽい。

weblogic.kernel.Default (self-tuning) という文面が見て取れるが、
これはそのメッセージが示す通り、適当に設定をチューニングしているようだ。

チューニングしてんなら動けや(# ゚Д゚)






で、結論。

>実行 → デバッグの構成 → VM引数
-XX:MaxPermSize=256M


Xmxは足りてるようなので、PermSizeを倍にした。
(デフォルトの設定では128Mになってるっぽい。)


これで動いた。

※ 組み込みコンテナの起動には40秒~1分くらいかかる。
  これはうちの端末が非力なだけか。







それよりも、weblogic.jarが参照してるライブラリが多いせいで、
Ctrl+Spaceしたときとかにめっちょ時間掛かるのがつらい。
by hsls | 2015-09-04 17:36 | 技術記事


<< 符号付きbyteを符号なしby... ボイラープレートコード撲滅er... >>