2017-09-04 159 views
0

我正在爲我的任務之一製作原型銀行應用程序。我已經成功創建了持久性API,EJB和所有必需的表。但是,當我創建WebClient的我的應用程序和整合,隨着企業應用程序並嘗試運行它,我得到以下錯誤:Java EE servlet錯誤 - 重複的URL模式

java.lang.IllegalArgumentException: Servlet [ RegistrationPortImpl ] and Servlet [ RegistrationRequesterPortImpl ] have the same url pattern

WebClient的只有默認就可以了index.xhtml文件,我沒有但與它整合到託管的bean。

我只是想在我做任何進步之前檢查我的應用程序是否會在與企業應用程序集成之後運行。

+0

您是否向這些servlet添加了任何url模式? – muasif80

+0

我還沒有創建任何服務器,它只是使用JSF。在更多的研究發現博客後,通過在web.xml文件中添加以下行來實際解決了這個問題。 metadata-complete =「true」 但是,我不知道爲什麼這解決了這個問題。 –

回答

0

您可以在web-app標籤這樣添加條目metadata-complete=true

<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xmlns="http://java.sun.com/xml/ns/javaee" 
    xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" 
    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_3_0.xsd" 
    version="3.0" 
    metadata-complete="true"> 

post表明類似的東西。 此條目禁用掃描以查看/WEB-INF/lib中的Servlet 3.0特定註釋和Web碎片。請參閱here,herehere

也許你可以檢查你的web.xml中的URL模式以及你的應用使用的庫。

0

@WebServlet把一個唯一的URL路徑例如@WebServlet("/port") @WebServlet("/requestport")

標註每個你的servlet這樣的,然後我相信不會出現此問題。

+0

我還沒有創建任何servlet,它只是使用JSF。在更多的研究發現博客後,通過在web.xml文件中添加以下行來實際解決了這個問題。 metadata-complete =「true」 但是,我不知道爲什麼這解決了這個問題。 –

+0

好吧。可能爲項目配置了兩個運行時並添加了重複庫。 – muasif80

+0

這可能對它有正確的理解https://stackoverflow.com/a/9820775/578855 – muasif80