1.注意:打包的时候要打得包包括除了EJB接口的实现类,其他的都要打包;
2.注意:平常的时候为了方便,在编写完ejb客户端webproject的时候,一般都
是直接把ejb项目直接右键build path引入来测试,但是如果直接把除实现
类之外的类打包并且放入到WEB-INF/lib下的话,可能会报错;
org.apache.jasper.JasperException: java.lang.ClassCastException:
$Proxy80 cannot be cast to com.credream.ejb.UserManager
org.apache.jasper.servlet.JspServletWrapper.handleJspException
(JspServletWrapper.java:521)
org.apache.jasper.servlet.JspServletWrapper.service
(JspServletWrapper.java:415)
org.apache.jasper.servlet.JspServlet.serviceJspFile
(JspServlet.java:336)
org.apache.jasper.servlet.JspServlet.service
(JspServlet.java:265)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter
(ReplyHeaderFilter.java:96)
这时候的解决办法:
找到:G:\jboss-4.2.3.GA\server\default\deploy\jboss-web.deployer
\META-INF中的jboss-service.xml文件
<attribute name="UseJBossWebLoader">false</attribute>把false改成true
这个的意思是:把web应用使用jboss来加载,包括lib中的类;