2016-09-16 71 views
2

我已经在Websphere Liberty上部署了应用程序。欢迎文件列表页面默认不加载

当我访问我的主页:localhost:8080/myapp它显示一个空白页。

但是,当我去localhost:8080/myapp/jsp/status.jsp它显示我需要的页面。

在我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"> 
    <listener> 
    <listener-class>com.netflix.eureka.EurekaBootStrap</listener-class> 
    </listener> 

    <filter> 
    <filter-name>statusFilter</filter-name> 
    <filter-class>com.netflix.eureka.StatusFilter</filter-class> 
    </filter> 

    <filter> 
    <filter-name>requestAuthFilter</filter-name> 
    <filter-class>com.netflix.eureka.ServerRequestAuthFilter</filter-class> 
    </filter> 
    <filter> 
    <filter-name>rateLimitingFilter</filter-name> 
    <filter-class>com.netflix.eureka.RateLimitingFilter</filter-class> 
    </filter> 
    <filter> 
    <filter-name>gzipEncodingEnforcingFilter</filter-name> 
    <filter-class>com.netflix.eureka.GzipEncodingEnforcingFilter</filter-class> 
    </filter> 

    <filter> 
    <filter-name>jersey</filter-name> 
    <filter-class>com.sun.jersey.spi.container.servlet.ServletContainer</filter-class> 
    <init-param> 
     <param-name>com.sun.jersey.config.property.WebPageContentRegex</param-name> 
     <param-value>/(flex|images|js|css|jsp)/.*</param-value> 
    </init-param> 
    <init-param> 
     <param-name>com.sun.jersey.config.property.packages</param-name> 
     <param-value>com.sun.jersey;com.netflix</param-value> 
    </init-param> 

    <!-- GZIP content encoding/decoding --> 
    <init-param> 
     <param-name>com.sun.jersey.spi.container.ContainerRequestFilters</param-name> 
     <param-value>com.sun.jersey.api.container.filter.GZIPContentEncodingFilter</param-value> 
    </init-param> 
    <init-param> 
     <param-name>com.sun.jersey.spi.container.ContainerResponseFilters</param-name> 
     <param-value>com.sun.jersey.api.container.filter.GZIPContentEncodingFilter</param-value> 
    </init-param> 
    </filter> 

    <filter-mapping> 
    <filter-name>statusFilter</filter-name> 
    <url-pattern>/*</url-pattern> 
    </filter-mapping> 

    <filter-mapping> 
    <filter-name>requestAuthFilter</filter-name> 
    <url-pattern>/*</url-pattern> 
    </filter-mapping> 

    <!-- Uncomment this to enable rate limiter filter. 
    <filter-mapping> 
    <filter-name>rateLimitingFilter</filter-name> 
    <url-pattern>/v2/apps</url-pattern> 
    <url-pattern>/v2/apps/*</url-pattern> 
    </filter-mapping> 
    --> 

    <filter-mapping> 
    <filter-name>gzipEncodingEnforcingFilter</filter-name> 
    <url-pattern>/v2/apps</url-pattern> 
    <url-pattern>/v2/apps/*</url-pattern> 
    </filter-mapping> 

    <filter-mapping> 
    <filter-name>jersey</filter-name> 
    <url-pattern>/*</url-pattern> 
    </filter-mapping> 

    <welcome-file-list> 
    <welcome-file>jsp/status.jsp</welcome-file> 
    </welcome-file-list> 

</web-app> 

的文件目录结构:

META-INF 
WEB-INF 
    --web.xml 
jsp 
    --status.jsp 

我无法弄清楚什么是错误的,我的设置。

+0

您需要显示完整的web.xml。 –

+0

@SabirKhan更新 – user1692342

+0

您为默认网址指定了三个过滤器,是否所有这些过滤器都被踢了?这是仅在** Websphere Liberty **上的问题,而不是在其他任何容器上? –

回答

1

你正在使用哪种Jeresy版本?更好的使用球衣版本2.0

有泽西1.8 结账here

你能在ServletContainer过滤器下方加入,并给一试的已知问题?

<init-param> 
<param-name>com.sun.jersey.config.property.JSPTemplatesBasePath</param-name> 
<param-value>/WEB-INF/jsp/*.jsp</param-value> 
</init-param> 
+0

仍然没有区别 – user1692342

+0

下一次,只要你不能自己再现目前描述的问题,因此无法用经验来解释或解决,那么请张贴“试试这个”在黑暗中拍摄作为评论首先,不作为答案。机会很大,他们错了,然后你会误导和混淆未来的读者在一个同样的问题上磕磕绊绊。 – BalusC