1
私はeclipse 3.7でjboss 5.0アプリケーションサーバーを使用してejb2アプリケーションを作成しました。私のクライアントコードは、私はそれを実行したとき、私はそういただきました問題エラー -スレッド "メイン" javax.naming.CommunicationExceptionの例外
Exception in thread "main" javax.naming.CommunicationException: Could not obtain connection to any of these urls: http://localhost:1099 and discovery failed with error: javax.naming.CommunicationException: Receive timed out [Root exception is java.net.SocketTimeoutException: Receive timed out] [Root exception is javax.naming.CommunicationException: Failed to connect to server http:1099 [Root exception is javax.naming.ServiceUnavailableException: Failed to connect to server http:1099 [Root exception is java.net.UnknownHostException: http]]]
at org.jnp.interfaces.NamingContext.checkRef(NamingContext.java:1727)
at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:680)
at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:673)
at javax.naming.InitialContext.lookup(InitialContext.java:392)
at Main.main(Main.java:15)
Caused by: javax.naming.CommunicationException: Failed to connect to server http:1099 [Root exception is javax.naming.ServiceUnavailableException: Failed to connect to server http:1099 [Root exception is java.net.UnknownHostException: http]]
at org.jnp.interfaces.NamingContext.getServer(NamingContext.java:311)
at org.jnp.interfaces.NamingContext.checkRef(NamingContext.java:1698)
... 4 more
Caused by: javax.naming.ServiceUnavailableException: Failed to connect to server http:1099 [Root exception is java.net.UnknownHostException: http]
at org.jnp.interfaces.NamingContext.getServer(NamingContext.java:281)
... 5 more
Caused by: java.net.UnknownHostException: http
at java.net.Inet6AddressImpl.lookupAllHostAddr(Native Method)
at java.net.InetAddress$1.lookupAllHostAddr(InetAddress.java:849)
at java.net.InetAddress.getAddressFromNameService(InetAddress.java:1202)
at java.net.InetAddress.getAllByName0(InetAddress.java:1153)
at java.net.InetAddress.getAllByName(InetAddress.java:1083)
at java.net.InetAddress.getAllByName(InetAddress.java:1019)
at java.net.InetAddress.getByName(InetAddress.java:969)
at org.jnp.interfaces.TimedSocketFactory.createSocket(TimedSocketFactory.java:81)
at org.jnp.interfaces.NamingContext.getServer(NamingContext.java:277)
... 5 more
を次取得follows-
import rohit.*;
import java.util.Properties;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.ejb.CreateException;
public class Main {
public static void main(String[] args)throws Exception {
// TODO Auto-generated method stub
try{
Context ctx = getContext();
//Context ctx=new InitialContext();
Object obj=ctx.lookup("ProductBean");
ProductHome home =(ProductHome) javax.rmi.PortableRemoteObject.narrow(obj, ProductHome.class);
ProductRemote remote=home.create();
Product prd = new Product("PRDCamera",001,50.50) ;
remote.addProduct(prd);
remote.updateProduct(prd);
remote.removeProduct(001);
remote.findProduct(001);
remote.findAllProduct();
}
catch(CreateException e){}
}
public static InitialContext getContext() throws Exception{
Properties pro = new Properties();
pro.put(javax.naming.InitialContext.INITIAL_CONTEXT_FACTORY,"org.jnp.interfaces.NamingContextFactory");
pro.put(javax.naming.InitialContext.PROVIDER_URL,"http://localhost:1099");
return new InitialContext(pro);
}
/* (non-Java-doc)
* @see java.lang.Object#Object()
*/
public Main() {
super();
}
}
ようですか? jbossのjndiポートは1099です(既にチェックされています)。