2010-12-14 14 views
5

サーブレットにEJBステートレスBeanを挿入しようとしていますが、サーブレットがNullPointerExcetionをスローしています。 JBossを使用してEJBとサーブレットをデプロイしています。サーブレットでEJBインジェクションが失敗する

私はJavaの世界では比較的新しいので、私が従った手順を投稿しています。

インタフェース

package MavenEJB.Bidding` 
import javax.ejb.Local; 

@Local 
public interface PlaceBid { 
public String AddBid(); 
} 

package MavenEJB.Bidding; 
import javax.ejb.Stateless; 
@Stateless(name="PlaceBid") 
public class PlaceBidBean implements PlaceBid { 
public PlaceBidBean(){} 

/** 
    * Include logic to add the bid 
    */ 

public String AddBid(){ 
    return "Placed bid using EJB"; 
} 
} 

私はMavenを使用して、Beanのjarファイルを作成し、私はJBOSSのディレクトリを "展開" するためにjarファイルをコピーしました。私はJMXコンソールにデプロイされたBeanを見ることができます。

JMXコンソールでのグローバルJNDI名前空間

+- PlaceBid (class: org.jnp.interfaces.NamingContext) 
    | +- local (proxy: $Proxy63 implements interface MavenEJB.Bidding.PlaceBid,interface org.jboss.ejb3.JBossProxy) 

マイサーブレットコード

public class PlaceBidServlet extends HttpServlet { 

    @EJB 
    private PlaceBid placeBid; 

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { 
    response.setContentType("text/html"); 

    PrintWriter out = response.getWriter(); 
    out.println("<HTML>"); 
    out.println("<HEAD><TITLE>Hello</TITLE></HEAD>"); 
    out.println("<BODY>"); 
    out.println("Output from EJB" +placeBid.AddBid()); 

    //out.println("Output from EJB"); 
    out.println("</BODY></HTML>"); 
} 

.... 
} 

私は私のサーブレットのURLをポイントすると、私はNullPointerExceptionが取得します。私がBeanにコメントして何か他のものを印刷すると、うまく印刷されます。したがって、問題はサーブレットのEJB依存性注入にあると確信しています。 私は多くのソリューションを試してみました。

答えて

7

私はこの問題を発見した後、誰かが利益を得ることができるように投稿しています。 問題は、私はJBOSS 4.2.3を使用していたため、この投稿http://community.jboss.org/message/410211は、jboss 4.2.xはサーブレットでのEJBインジェクションをサポートしていないことを示しています。

私はJboss 5.1を使用しました。サーブレットとEJBの両方が単一のearパッケージに含まれていない場合でも、EJB InjectionにmappedNameを使用する必要があります。私は、WAR内のサーブレットと別個のJar内のEJBを持っていました。詳細については、この投稿を確認してくださいhttp://community.jboss.org/message/8196#8196

+1

あなた自身の答えを受け入れることができますので、他のユーザーはこの質問に回答したことを知ります。 –

関連する問題