私は、ejbモジュールを含む.earファイルとしてアプリケーションをパックしました。リモートインタフェースを実装するステートレスセッションBeanがあります。このような何か:クライアント-ejb jarを使用したリモートejbのルックアップ
package my.package.ext.impl;
[...]
@Stateless(name = "MyPropertiesHandler", mappedName = "ejb/MyPropertiesHandler")
public class PropertiesHandler implements PropertiesHandlerRemote {
[...]
}
と、この:生成されたクライアントのEJB JARもあります
package my.package.ext;
[...]
@Remote
public interface PropertiesHandlerRemote {
[...]
}
は、ビジネス、リモート・インタフェースおよび内部のいくつかの他のものがあります。
このclient-ejb jarは、他のアプリケーションにMaven依存として接続されています。
私は、ルックアップするためにPropertiesHandlerサービスをこのアプリケーションから試してください:あなたは上記を参照できるように私は、Weblogicの10.xの上でそれを実行
java.lang.NoClassDefFoundError: my/package/ext/PropertiesHandlerRemote
at [...]
at sun.reflect.GeneratedMethodAccessor633.invoke(Unknown Source)
Truncated. see log file for complete stacktrace
Caused By: java.lang.ClassNotFoundException: my.package.ext.PropertiesHandlerRemote
at weblogic.utils.classloaders.GenericClassLoader.findLocalClass(GenericClassLoader.java:297)
at weblogic.utils.classloaders.GenericClassLoader.findClass(GenericClassLoader.java:270)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
at weblogic.utils.classloaders.GenericClassLoader.loadClass(GenericClassLoader.java:179)
Truncated. see log file for complete stacktrace
:私はエラーを次取得
PropertiesHandlerRemote propertiesHandler = InitialContext.doLookup(
"ejb/MyPropertiesHandler#my.package.ext.PropertiesHandlerRemote");
この瞬間。
アイデアは間違っていますか?
私はそれがコンパイルされると信じています。この依存関係のためにどの範囲を設定しますか?このクラスはWLによって実行時に検出されません。 – Kris
@Kris返信ありがとうございます。スコープが指定されていないので、デフォルトではコンパイルされていると思います。とにかくそれはそれに含まれている.earとclient-ejb jarファイルとしてパッケージ化されています。返信ありがとうございます。 – kardanov