Websphere 无法将会话bean注入bluemix应用程序上的servlet

Websphere 无法将会话bean注入bluemix应用程序上的servlet,websphere,java-ee-6,ibm-cloud,Websphere,Java Ee 6,Ibm Cloud,我在bluemix中创建了一个简单的JavaEE应用程序并进行了部署。然后我创建了会话bean和servlet。我无法从Servlet访问会话bean方法 有人在bluemix上做过这个吗 这是我的servlet代码 package nags.test.web; import java.io.IOException; import java.io.PrintWriter; import javax.ejb.EJB; import javax.servlet.ServletException;

我在bluemix中创建了一个简单的JavaEE应用程序并进行了部署。然后我创建了会话bean和servlet。我无法从Servlet访问会话bean方法

有人在bluemix上做过这个吗

这是我的servlet代码

package nags.test.web;

import java.io.IOException;
import java.io.PrintWriter;

import javax.ejb.EJB;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import nags.test.ejb.NagseSessionBean;

/**
 * Servlet implementation class TestServlet
 */
@WebServlet("/TestServlet")
public class TestServlet extends HttpServlet {
private static final long serialVersionUID = 1L;

@EJB
NagseSessionBean nagsBean;
/**
 * @see HttpServlet#HttpServlet()
 */
public TestServlet() {
    super();
    // TODO Auto-generated constructor stub
}

/**
 * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
 */
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    // TODO Auto-generated method stub
    doService(request, response);
}

/**
 * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
 */
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    // TODO Auto-generated method stub
    doService(request, response);
}

public void doService(HttpServletRequest request, HttpServletResponse   response) throws ServletException, IOException {
    // TODO Auto-generated method stub
    System.out.println("TestServlet doService Begin");
    response.setContentType("text/html");
    PrintWriter out = response.getWriter();

    out.println("<!DOCTYPE HTML>");
    out.println("<html>");
    out.println("<head>");
    out.println("<meta charset=\"UTF-8\">");

    out.println("<title>Nags HTML from Servlet</title>");
    out.println("</head>");
    out.println("<body bgcolor=\"white\">");
    out.println("<h1> This is Nags HTML5 PAge </h1>");
    if (nagsBean == null){
        System.out.println("TestServlet doService Unable to inject EJB");
    }else{
        System.out.println("TestServlet doService Able to inject EJB");
        String helloString = nagsBean.sayHello("Nagarjun");
        if (helloString == null){
            out.println("<h1> No Response from Session Bean </h1>");
        }else {
            out.println("<h1> helloString </h1>");
        }
    }

    out.println("</body>");
    out.println("</html>");
    System.out.println("TestServlet doService End");
    //out.flush();
    //out.close();
}


}
包nags.test.web;
导入java.io.IOException;
导入java.io.PrintWriter;
导入javax.ejb.ejb;
导入javax.servlet.ServletException;
导入javax.servlet.annotation.WebServlet;
导入javax.servlet.http.HttpServlet;
导入javax.servlet.http.HttpServletRequest;
导入javax.servlet.http.HttpServletResponse;
导入nags.test.ejb.nagsessionbean;
/**
*Servlet实现类TestServlet
*/
@WebServlet(“/TestServlet”)
公共类TestServlet扩展了HttpServlet{
私有静态最终长serialVersionUID=1L;
@EJB
NagsessionBean nagsBean;
/**
*@参见HttpServlet#HttpServlet()
*/
公共TestServlet(){
超级();
//TODO自动生成的构造函数存根
}
/**
*@参见HttpServlet#doGet(HttpServletRequest请求,HttpServletResponse响应)
*/
受保护的void doGet(HttpServletRequest请求,HttpServletResponse响应)抛出ServletException,IOException{
//TODO自动生成的方法存根
doService(请求、响应);
}
/**
*@请参阅HttpServlet#doPost(HttpServletRequest请求,HttpServletResponse响应)
*/
受保护的void doPost(HttpServletRequest请求、HttpServletResponse响应)引发ServletException、IOException{
//TODO自动生成的方法存根
doService(请求、响应);
}
public void doService(HttpServletRequest请求、HttpServletResponse响应)抛出ServletException、IOException{
//TODO自动生成的方法存根
System.out.println(“TestServlet doService Begin”);
response.setContentType(“text/html”);
PrintWriter out=response.getWriter();
out.println(“”);
out.println(“”);
out.println(“”);
out.println(“”);
println(“nagshtml来自Servlet”);
out.println(“”);
out.println(“”);
println(“这是Nags HTML5页面”);
if(nagsBean==null){
System.out.println(“TestServlet doService无法注入EJB”);
}否则{
println(“能够注入EJB的TestServlet doService”);
字符串helloString=nagsBean.sayHello(“Nagarjun”);
if(helloString==null){
println(“会话Bean没有响应”);
}否则{
out.println(“helloString”);
}
}
out.println(“”);
out.println(“”);
System.out.println(“TestServlet doService端”);
//out.flush();
//out.close();
}
}

您的代码没有错误,在Bluemix上尝试也可以。我尝试使用无状态和有状态企业bean。 因此,您的Bean代码可能有错误。
要调查可能的问题,请使用“cf logs--recent”命令检索Bluemix日志并分析抛出的异常。

您的代码没有错误,尝试Bluemix也可以正常工作。我尝试使用无状态和有状态企业bean。 因此,您的Bean代码可能有错误。
要调查可能的问题,请使用“cf logs--recent”命令检索Bluemix日志并分析抛出的异常。

您的代码没有错误,尝试Bluemix也可以正常工作。我尝试使用无状态和有状态企业bean。 因此,您的Bean代码可能有错误。
要调查可能的问题,请使用“cf logs--recent”命令检索Bluemix日志并分析抛出的异常。

您的代码没有错误,尝试Bluemix也可以正常工作。我尝试使用无状态和有状态企业bean。 因此,您的Bean代码可能有错误。
要调查可能的问题,请使用“cf logs--recent”命令检索Bluemix日志,并分析引发的异常。

日志中有错误吗
cf日志——最近的
另外,您能用本地Liberty服务器测试它吗?日志中有错误吗
cf日志——最近的
另外,您能用本地Liberty服务器测试它吗?日志中有错误吗
cf日志——最近的
另外,您能用本地Liberty服务器测试它吗?日志中有错误吗
cf日志——最近的
另外,您能用本地Liberty服务器测试它吗?