0 0

项目引进CXF之后导致当前用的web service接口用不了!20

当前项目开发web service接口是基于jdk 1.6+jboss 5.1.2开发。

由于最近引进cxf 2.2.9之后,之前项目已经发布且在生产上用的web service接口无法访问,但是新开发的web service却能正常使用。

具体报错信息如下:
02:05:11,561 INFO [[/BP]] Marking servlet AxaPolicyService as unavailable
02:05:11,561 ERROR [[AxaPolicyService]] Allocate exception for servlet AxaPolicyService
java.lang.ClassCastException: com.fndsoft.insurance.ws.AxaPolicyServiceImpl cannot be cast to javax.servlet.Servlet
at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1006)
at org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:777)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:129)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:183)
at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:95)
at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.process(SecurityContextEstablishmentValve.java:126)
at org.jboss.web.tomcat.security.SecurityContextEstablishmentValve.invoke(SecurityContextEstablishmentValve.java:70)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:158)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.jboss.web.tomcat.service.request.ActiveRequestResponseCacheValve.internalProcess(ActiveRequestResponseCacheValve.java:74)
at org.jboss.web.tomcat.service.request.ActiveRequestResponseCacheValve.invoke(ActiveRequestResponseCacheValve.java:47)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:330)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:829)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:599)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:451)
at java.lang.Thread.run(Thread.java:619)


web.xml配置信息如下:
< ?xml version="1.0" encoding="UTF-8"?>
< web-app id="WebApp_ID" version="2.4"
xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<display-name>BP</display-name>
<!-- Spring ApplicationContext配置文件的路径.可使用通配符,多个路径用逗号分隔此参数用于后面的Spring-Context loader -->
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath*:applicant.spring.xml,
classpath*:application-context.spring.xml,
classpath*:inpayment.spring.xml,
classpath*:login.spring.xml,
classpath*:match.spring.xml,
classpath*:payment.spring.xml,
classpath*:query.spring.xml,
classpath*:sysadmin.spring.xml,
classpath*:invoice.spring.xml,
classpath*:bjbeans.spring.xml,
classpath*:invoicemanage.spring.xml,
classpath*:businesssettlement.spring.xml,
classpath*:bankplatform.spring.xml,
classpath*:bfPlatform.spring.xml,
classpath*:supplement.spring.xml,
classpath*:ws/datahub_mm_ws.spring.xml,
</param-value>
< /context-param>
 
<!-- 控制页面请求的filter -->
<filter>
<filter-name>ForwardFilter</filter-name>
<filter-class>com.fndsoft.ies4.autoclaim.common.filter.ForwardFilter</filter-class>
<init-param>
<param-name>TIMEOUTURL</param-name><param-value>/ies4flow/main/timeOut.jsp</param-value>
</init-param>
<init-param>
<param-name>LOGINPAGEURL</param-name><param-value>/ies4flow/main/login.jsp</param-value>
</init-param>
<init-param>
<param-name>MAINVIEWURL</param-name><param-value>/ies4flow/workspace/workspace.jsp</param-value>
</init-param>
<init-param>
<param-name>TASKDELIVER</param-name><param-value>/ies4flow/task/deliver.jsp</param-value>
</init-param>
<init-param>
<param-name>GIVENRULDELIVER</param-name><param-value>/ies4flow/workspace/givenUrlDeliver.jsp</param-value>
</init-param>
<init-param>
<param-name>notCheckURLListStr</param-name>
<param-value>/index.jsp;/ies4flow/index.html;/ies4flow/main/claimmain.html;/ies4flow/main/login.jsp;/ies4flow/main/logout.jsp;/ies4flow/main/timeOut.jsp;/ies4flow/main/checkSession.jsp;/ies4flow/main/showModalLogin.jsp;/ies4flow/sysmanagement/editpass.jsp;/ies4flow/hidden.jsp;/ies4flow/mobileService/bill/login.jsp;/ies4flow/mobileService/bill/loginAction.jsp;/ies4flow/mobileService/loginAction.jsp;ies4flow/main/login.jsp;/ies4flow/main/singleLogin.jsp</param-value>
</init-param>
<init-param>
<param-name>SINGLELOGINPAGEURL</param-name><param-value>/ies4flow/main/singleLogin.jsp</param-value>
</init-param>
<!---end-->
</filter>

<filter-mapping>
<filter-name>ForwardFilter</filter-name>
<url-pattern>*.jsp</url-pattern>
</filter-mapping>

<!-- 著名 Character Encoding filter -->
<filter>
<filter-name>encodingFilter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
<init-param>
<param-name>forceEncoding</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<!--Hibernate Open Session in View Filter-->
<filter>
<filter-name>hibernateFilter</filter-name>
<filter-class>org.springframework.orm.hibernate3.support.OpenSessionInViewFilter</filter-class>
</filter>
<filter>
<filter-name>doradofilter</filter-name>
<filter-class>com.bstek.dorado.core.DoradoFilter</filter-class>
</filter>
<filter>
<filter-name>GZIPEncoder</filter-name>
<filter-class>com.bstek.dorado.core.GZIPEncodeFilter</filter-class>
</filter>

<filter-mapping>
<filter-name>encodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>hibernateFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>doradofilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>GZIPEncoder</filter-name>
<url-pattern>*.jsp</url-pattern>
</filter-mapping>

<!--Spring ApplicationContext 载入 -->
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<!-- Spring 刷新Introspector防止内存泄露 -->
<listener>
<listener-class>org.springframework.web.util.IntrospectorCleanupListener</listener-class>
</listener>
<servlet>
<servlet-name>doradoservlet</servlet-name>
<servlet-class>com.bstek.dorado.core.DoradoServlet</servlet-class>
<load-on-startup>2</load-on-startup>
</servlet>

<!-- web service接口部署jboss用 -->
<servlet>
<servlet-name>AxaPolicyService</servlet-name>
<servlet-class>com.fndsoft.insurance.ws.AxaPolicyServiceImpl</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>AxaPolicyService</servlet-name>
<url-pattern>/cdmsService</url-pattern>
</servlet-mapping>


<!-- cxf相关servlet 配置 -->
<servlet>
<description>Apache CXF Endpoint</description>
<display-name>cxf</display-name>
<servlet-name>cxf</servlet-name>
<servlet-class>org.apache.cxf.transport.servlet.CXFServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>cxf</servlet-name>
<url-pattern>/webservices/*</url-pattern>
</servlet-mapping>


<session-config>
<session-timeout>60</session-timeout>
</session-config>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<jsp-config>
<taglib>
<taglib-uri>http://www.bstek.com/dorado</taglib-uri>
<taglib-location>/WEB-INF/dorado.tld</taglib-location>
</taglib>
</jsp-config>
<login-config>
<auth-method>BASIC</auth-method>
</login-config>

<servlet-mapping>
<servlet-name>LoadFile</servlet-name>
<url-pattern>/LoadFile</url-pattern>
</servlet-mapping>
< /web-app>

2014年2月25日 13:01

3个答案 按时间排序 按投票排序

0 0

jboss本身就自带cxf,我怀疑是否冲突了。如果冲突就不要引入cxf了

2014年2月27日 12:48
0 0

1.com.fndsoft.insurance.ws.AxaPolicyServiceImpl 是否继承了httpservlet
2.查看项目路径是否有多个servlet的jar包或者其他版本不一致的jar包

2014年2月25日 13:56
0 0

02:05:11,561 ERROR [[AxaPolicyService]] Allocate exception for servlet AxaPolicyService
java.lang.ClassCastException: com.fndsoft.insurance.ws.AxaPolicyServiceImpl cannot be cast to javax.servlet.Servlet

这个异常很明显了AxaPolicyServiceImpl 有问题

2014年2月25日 13:53

相关推荐

Global site tag (gtag.js) - Google Analytics