【发布时间】:2015-08-03 16:31:36
【问题描述】:
我在尝试将 EAR 部署到 Liberty 配置文件时遇到问题。部署后,我可以点击索引页面(欢迎页面)。当我试图达到其余端点之一时,我得到 [WARNING] SRVE0190E:找不到文件:rest/xx/xx。 这是我的 server.xml 的样子:
<webContainer deferServletLoad="false"/>
<!-- Enable features -->
<featureManager>
<feature>jsp-2.2</feature>
<feature>jpa-2.0</feature>
<feature>servlet-3.0</feature>
<feature>json-1.0</feature>
<feature>jndi-1.0</feature>
<feature>jdbc-4.0</feature>
<feature>jaxrs-1.1</feature>
</featureManager>
<!-- To access this server from a remote client add a host attribute to the following element, e.g. host="*" -->
<httpEndpoint httpPort="9081" httpsPort="9444" id="defaultHttpEndpoint"/>
<library id="objectFactoryLib">
<fileset dir="${server.config.dir}/lib/"/>
</library>
<jndiObjectFactory className="xxx" id="objectFactory" libraryRef="objectFactoryLib" objectClassName="java.util.Properties"/>
<library id="oracle-lib">
<fileset dir="${server.config.dir}/oracle/" includes="ojdbc6-11.2.0.3.jar"/>
</library>
<applicationMonitor updateTrigger="mbean"/>
<enterpriseApplication id="xxx" location="xxx.ear" name="xxx">
<classloader commonLibraryRef="oracle-lib" delegation="parentLast"/>
</enterpriseApplication>
Web.xml 看起来像:
<context-param>
<param-name>spring.profiles.default</param-name>
<param-value>default</param-value>
</context-param>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:META-INF/server/wink-core-context.xml
classpath:xxx.xml
</param-value>
</context-param>
<servlet>
<servlet-name>winkRestServlet</servlet-name>
<servlet-class>org.apache.wink.server.internal.servlet.RestServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>winkRestServlet</servlet-name>
<url-pattern>/rest/*</url-pattern>
</servlet-mapping>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
</welcome-file-list>
【问题讨论】:
-
您的应用程序中是否有 wink 库?如果是这样,则可能是由于 jaxrs-1.1 功能与应用程序中的 jaxrs 实现之间的冲突引起的。尝试删除 jaxrs-1.1。或者,如果您没有 JAX-RS 1.1,请删除 servlet 类名称,因为它将在运行时添加正确的类名称。
-
是的,我确实有 wink 库。我尝试了您建议的两个选项。它没有工作。我可以点击索引页面,但不是实际的休息终点。