spring MVC + Jersey集成配置错误

时间:2014-08-28 07:54:10

标签: eclipse spring jersey

我正在尝试整合spring mvc + jersey

的web.xml:

   <?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
  <display-name>Archetype Created Web Application</display-name>


<context-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>classpath:/jpaContext.xml
        classpath:/applicationContext.xml
        </param-value>
    </context-param>

    <listener>
        <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
    </listener>


    <servlet>
        <servlet-name>SpringApplication</servlet-name>
        <servlet-class>org.glassfish.jersey.servlet.ServletContainer</servlet-class>
        <init-param>
            <param-name>javax.ws.rs.Application</param-name>
            <param-value>orgProfiles.webserviceJersey.MyApplication</param-value>
        </init-param>
        <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>SpringApplication</servlet-name>
        <url-pattern>/ws/*</url-pattern>
    </servlet-mapping>













    <servlet>
        <servlet-name>orgProfilesServlet</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <init-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>/WEB-INF/config/servlet-config.xml</param-value>
        </init-param>
    </servlet>

        <servlet-mapping>
        <servlet-name>orgProfilesServlet</servlet-name>
        <url-pattern>*.html</url-pattern>
    </servlet-mapping>

        <servlet-mapping>
        <servlet-name>orgProfilesServlet</servlet-name>
        <url-pattern>*.json</url-pattern>
    </servlet-mapping>









</web-app>

的applicationContext.xml

<?xml version="1.0" encoding="UTF-8"?>

<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:context="http://www.springframework.org/schema/context"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
  http://www.springframework.org/schema/beans/spring-beans.xsd
  http://www.springframework.org/schema/context
  http://www.springframework.org/schema/context/spring-context.xsd"
        >

    <bean id="greetingService" class="orgProfiles.webserviceJersey.GreetingServiceImpl"/>

    <bean class="orgProfiles.webserviceJersey.DateTimeService" scope="request"/>

    <bean class="orgProfiles.webserviceJersey.SpringSingletonResource"/>

    <bean class="orgProfiles.webserviceJersey.SpringRequestResource" scope="request"/>

    <bean class="orgProfiles.webserviceJersey.CustomExceptionMapper"/>

</beans>

当我尝试运行应用程序时,它最终会出现以下错误消息:

Aug 28, 2014 1:16:16 PM org.apache.catalina.core.AprLifecycleListener init
INFO: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib
Aug 28, 2014 1:16:17 PM org.apache.tomcat.util.digester.SetPropertiesRule begin
WARNING: [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property 'source' to 'org.eclipse.jst.j2ee.server:orgProfiles' did not find a matching property.
Aug 28, 2014 1:16:17 PM org.apache.coyote.AbstractProtocol init
INFO: Initializing ProtocolHandler ["http-bio-8080"]
Aug 28, 2014 1:16:17 PM org.apache.coyote.AbstractProtocol init
INFO: Initializing ProtocolHandler ["ajp-bio-8009"]
Aug 28, 2014 1:16:17 PM org.apache.catalina.startup.Catalina load
INFO: Initialization processed in 1366 ms
Aug 28, 2014 1:16:17 PM org.apache.catalina.core.StandardService startInternal
INFO: Starting service Catalina
Aug 28, 2014 1:16:17 PM org.apache.catalina.core.StandardEngine startInternal
INFO: Starting Servlet Engine: Apache Tomcat/7.0.54
Aug 28, 2014 1:16:24 PM org.apache.catalina.core.ApplicationContext log
INFO: Spring WebApplicationInitializers detected on classpath: [org.glassfish.jersey.server.spring.SpringWebApplicationInitializer@30e65807]
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
Aug 28, 2014 1:16:24 PM org.apache.catalina.core.ApplicationContext log
INFO: Initializing Spring root WebApplicationContext
Aug 28, 2014 1:16:25 PM org.apache.catalina.core.StandardContext loadOnStartup
SEVERE: Servlet /orgProfiles threw load() exception
java.lang.ClassNotFoundException: orgProfiles.src.main.java.webserviceJersey.MyApplication
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1720)
    at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1571)
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:190)
    at org.glassfish.jersey.internal.util.ReflectionHelper$7.run(ReflectionHelper.java:407)
    at org.glassfish.jersey.internal.util.ReflectionHelper$7.run(ReflectionHelper.java:397)
    at java.security.AccessController.doPrivileged(Native Method)
    at org.glassfish.jersey.servlet.WebComponent.createResourceConfig(WebComponent.java:463)
    at org.glassfish.jersey.servlet.WebComponent.<init>(WebComponent.java:302)
    at org.glassfish.jersey.servlet.ServletContainer.init(ServletContainer.java:170)
    at org.glassfish.jersey.servlet.ServletContainer.init(ServletContainer.java:358)
    at javax.servlet.GenericServlet.init(GenericServlet.java:158)
    at org.apache.catalina.core.StandardWrapper.initServlet(StandardWrapper.java:1284)
    at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1197)
    at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1087)
    at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:5210)
    at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5493)
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1559)
    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1549)
    at java.util.concurrent.FutureTask.run(FutureTask.java:262)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
    at java.lang.Thread.run(Thread.java:745)

Aug 28, 2014 1:16:25 PM org.apache.coyote.AbstractProtocol start
INFO: Starting ProtocolHandler ["http-bio-8080"]
Aug 28, 2014 1:16:25 PM org.apache.coyote.AbstractProtocol start
INFO: Starting ProtocolHandler ["ajp-bio-8009"]
Aug 28, 2014 1:16:25 PM org.apache.catalina.startup.Catalina start
INFO: Server startup in 8375 ms

我该如何解决这个问题?先谢谢

1 个答案:

答案 0 :(得分:0)

根据您的咖啡豆名称orgProfiles.src.main.java.webserviceJersey.MyApplication应为orgProfiles.webserviceJersey.MyApplication