首页 文章

servlet创建的WebSphere Application Server / 8.0 / Uncaught初始化异常

提问于
浏览
3

我只是想在websphere 8.0上部署一个示例restful web服务示例,但我得到以下内容:

Error

[12.02.2013 05:13:07:728 VET] 00000c74 E UOW = source = com.ibm.ws.webcontainer.servlet class = com.ibm.ws.webcontainer.servlet.ServletWrapper method = init org = prod = component = thread = [WebContainer:370] Uncaught.init.exception.thrown.by.servlet [12.02.2013 05:13:07:728 VET] 00000c74 E UOW = source = com.ibm.ws.webcontainer.webapp class = com .ibm.ws.webcontainer.webapp.WebApp method = logServletError org = prod = component = thread = [WebContainer:370] SRVE0293E:[Servlet Error] - [jersey-serlvet]:java.lang.IncompatibleClassChangeError:org.objectweb.asm java.lang.ClassLoader.defineClass(ClassLoader.java:262)的java.lang.ClassLoader.defineClassImpl(Native Method)中的.ClassVisitor,位于com.ibm.ws的java.security.SecureClassLoader.defineClass(SecureClassLoader.java:69) .classloader.CompoundClassLoader._defineClass(CompoundClassLoader.java:852)位于com.ibm.ws.classloader.CompoundClassLoader.localFindClass(CompoundClassLoader.java:762)的com.ibm.ws.classloader.CompoundClassLoader.loadClass(CompoundClassL) oader.java:585)java.lang.ClassLoader.loadClass(ClassLoader.java:627)at java.lang.J9VMInternals.verifyImpl(Native Method)at java.lang.J9VMInternals.verify(J9VMInternals.java:85)at java .lang.J9VMInternals.verify(J9VMInternals.java:83)at java.lang.J9VMInternals.initialize(J9VMInternals.java:162)at com.sun.jersey.api.core.ScanningResourceConfig.init(ScanningResourceConfig.java:79)at Com.sun.jersey.api.core.PackagesResourceConfig.init(PackagesResourceConfig.java:104)at com.sun.jersey.api.core.PackagesResourceConfig . (PackagesResourceConfig.java:78)at com.sun.jersey.api.core .packagesResourceConfig . (PackagesResourceConfig.java:89)com.sun.jersey.spi.container.servlet.WebComponent.createResourceConfig(WebComponent.java:700)at com.sun.jersey.spi.container.servlet.WebComponent.createResourceConfig( WebComponent.java:678)com.sun.jersey.spi.container.servlet.WebComponent.init(WebComponent.java:203)at com.sun.jersey.spi.container.servlet.ServletContainer.init(ServletContainer.jav) a:373)com.sun.jersey.spi.container.servlet.ServletContainer.init(ServletContainer.java:556)位于com.ibm.ws.webcontainer的javax.servlet.GenericServlet.init(GenericServlet.java:161) .servlet.ServletWrapper.init(ServletWrapper.java:336)位于com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.init(ServletWrapperImpl.java:168)的com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper) .java:629)com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:456)at com的com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.handleRequest(ServletWrapperImpl.java:178) . ibm.ws.webcontainer.filter.WebAppFilterManager.invokeFilters(WebAppFilterManager.java:1027)位于com.ibm.ws.webcontainer.WebContainer的com.ibm.ws.webcontainer.servlet.CacheServletWrapper.handleRequest(CacheServletWrapper.java:87) . handleRequest(WebContainer.java:895)位于com.ibm.ws.webcontainer.channel.WCChanne的com.ibm.ws.webcontainer.WSWebContainer.handleRequest(WSWebContainer.java:1662) lLink.ready(WCChannelLink.java:195)位于com.ibm.ws.http.channel.inbound.impl的com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:458) . HttpInboundLink.handleNewRequest(HttpInboundLink.java:522)位于com.ibm.ws.http.channel.inbound.impl的com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.processRequest(HttpInboundLink.java:311) . HttpInboundLink.ready(HttpInboundLink.java:282)位于com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.complete的com.ibm.ws.tcp.channel.impl.NewConnectionInitialReadCallback.sendToDiscriminators(NewConnectionInitialReadCallback.java:214) NewConnectionInitialReadCallback.java:113)com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:165)at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217)at com .ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncChannelFuture.java:161)at com.ibm.io.async.AsyncFuture.completed(AsyncFu) ture.java:138)com.ibm.io.async.ResultHandler.complete(ResultHandler.java:204)com.ibm.io上的com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:775) .async.ResultHandler $ 2.run(ResultHandler.java:905)atcom.ibm.ws.util.ThreadPool $ Worker.run(ThreadPool.java:1783)

web.xml

<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>Restful Web Application</display-name>

    <servlet>
        <servlet-name>jersey-serlvet</servlet-name>
        <servlet-class>
            com.sun.jersey.spi.container.servlet.ServletContainer
        </servlet-class>
        <init-param>
            <param-name>com.sun.jersey.config.property.packages</param-name>
            <param-value>com.mkyong.rest.JSONService</param-value>
        </init-param>
        <init-param>
            <param-name>com.sun.jersey.api.json.POJOMappingFeature</param-name>
            <param-value>true</param-value>
        </init-param>
        <load-on-startup>1</load-on-startup>
    </servlet>

    <servlet-mapping>
        <servlet-name>jersey-serlvet</servlet-name>
        <url-pattern>/rest/*</url-pattern>
    </servlet-mapping>

</web-app>

1 回答

  • 5

    这似乎是IBM论坛here讨论的产品缺陷,因此发布了fix . 引用链接引用,问题是;

    WebSphere Application Server使用的内部ASM库可供应用程序访问 . 如果应用程序还部署了ASM库,则可能会发生冲突 .

    forums列出了一些可能的解决方法,这有助于通过类路径修改解决冲突 . 由于您目前不是8.5而是8.0,我建议您提高PMR以验证您的问题是否相同,并获得适用于您的版本的修复程序 .

相关问题