2017-09-04 154 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