2010-10-20 132 views
3

我正在嘗試從與處理對資源請求的servlet相同的webapp提供靜態內容(調用Jersey REST資源的HTML表單)。據我所知,我可以將請求過濾到Jersey servlet以外的靜態內容。我的web.xml如下,但目前我無法訪問靜態內容,也沒有資源......兩者都單獨工作。過濾靜態內容Jersey

<filter> 
    <filter-name>my-filter</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>/*.html</param-value> 
    </init-param> 
</filter> 
<filter-mapping> 
    <filter-name>my-filter</filter-name> 
    <url-pattern>/*</url-pattern> 
</filter-mapping> 
<servlet> 
    <servlet-name>my-service</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.mydomain.ws.myservice</param-value> 
    </init-param> 
    <load-on-startup>1</load-on-startup> 
</servlet> 
<servlet-mapping> 
    <servlet-name>my-service</servlet-name> 
    <url-pattern>/*</url-pattern> 
</servlet-mapping> 
+0

如果我刪除了'',那麼Web服務工作,並且如果我刪除了'',靜態內容就起作用。既;既沒有工作。 – pertinky 2010-10-21 07:42:19

+0

關於這個話題的一些消息? – herau 2014-07-01 16:38:16

回答

0

設置我的服務,使得其他的服務是根據自己的子路徑,從靜態內容分開:

<servlet-mapping> 
    <servlet-name>ServletAdaptor</servlet-name> 
    <url-pattern>/rest/*</url-pattern> 
</servlet-mapping> 
3

FWIW你原來的問題可能是因爲對WebContentRegex帕拉姆值不一個正則表達式。好吧,技術上它是,但它不符合你可能想要的。您應該嘗試使用類似/.*.html的內容。