私はJ2EE/EJB分野の初心者であり、いくつかの基本的な例に従っています。私は2つの数を合計する非常に単純なクラスを実装しました。ホームインターフェイスとリモートインターフェイス、およびEnterprise Bean(ステートレス)自体があります。
Adder.java //Remote interface
AdderHome.java //Home interface
AdderBean.java //The EJB class
それをEJBアプリケーションとしてテストする場合、すべてが完全に機能します。しかし、今はそれをJSPページとしてテストしたいのですが、リモートインターフェイスがホームインターフェイスからインスタンス化された時点でエラーが発生します(実際には出力がありません)。
時間内に:JBoss4でJ2EE1.4を使用しています。
これがJSPページのコードです。1行だけを印刷することになっています。
<%@page import="javax.naming.*" %>
<%@page import="javax.rmi.PortableRemoteObject" %>
<%@page import="java.util.Properties" %>
<%@page import="com.lucasmariano.*" %>
<%
//Preparing the properting to be put in the InitialContext
Properties properties = new Properties();
properties.put(Context.INITIAL_CONTEXT_FACTORY, "org.jnp.interfaces.NamingContextFactory");
properties.put(Context.PROVIDER_URL, "localhost:1099");
try {
//Get an Initial Context
InitialContext jndiContext = new InitialContext(properties);
System.out.println("got context");
//get a reference to the bean
Object ref = jndiContext.lookup("Adder");
System.out.println("got reference");
//Get a reference to this to the bean's home interface
AdderHome home = (AdderHome) PortableRemoteObject.narrow(ref, AdderHome.class);
out.println("GETTING OBJECT <BR />");
//create an Adder object from the Home interface
//###### HERE IS THE PROBLEM!!! #######
Adder adder = home.create();
out.println("ADDER OBJECT CREATED <BR />");
out.println("2 + 5 = " + adder.add(2,5));
}catch(Exception e ){
System.out.println(e.toString());
}
%>
web.xmlに新しい値を追加する必要がありますか?