我有客户端类,但是当调用类时,它会得到一个
" java.lang.NoClassDefFoundError:org / jboss / remoting / InvokerLocator"运行时错误。
import java.text.SimpleDateFormat;
import javax.inject.Inject;
import javax.inject.Named;
import org.jboss.remoting.Client;
import org.jboss.remoting.InvokerLocator;
@Named("esamDIDDClient")
public class ESAMDIDDWSClient {
@Inject SystemProperyManager sysprop;
private void sendMessageToJBRListener(String url, String message) throws Throwable {
String locatorURI = url;
InvokerLocator locator = new InvokerLocator(locatorURI);
System.out.println("Calling JBoss Remoting Listener using locator URI: " + locatorURI);
Client remotingClient = null;
try {
remotingClient = new Client(locator);
remotingClient.connect();
// Deliver the message to the listener...
Object response = remotingClient.invoke(message);
System.out.println("JBR Class: " + response.getClass().getName());
System.out.println("Response from JBoss Remoting Listener '" + locatorURI + "' was '" + response + "'.");
} catch (Exception ex) {
ex.printStackTrace();
throw ex;
} finally {
if(remotingClient != null) {
remotingClient.disconnect();
}
}
}
我在IDE中有 org.jboss.remoting JAR,我也在那里确认了InvokerLocator
类。
我从here下载了JAR文件,这是我能找到的最新/最稳定的文件。
我使用了错误的 remoting.jar ,还是我错过了其他内容?
顺便说一句,这是一个使用 seam.remoting.jar 。去除接缝后,我不得不使用不同的JAR。
答案 0 :(得分:0)
当RedHat用Wildfly替换JBoss AS时,它还replaced JBoss ESB和SwitchYard。
因此,JBoss AS7为JBoss ESB there's no more support。
根据您发布的代码,我假设您的服务实际上是一项网络服务。
因此,我认为您可能希望更改代码并开始使用RemoveInvoker和SOAP-based web service binding。
作为起点,您可以查看this RedHat的SwitchYard示例。