我正在为我的某个作业制作原型银行应用程序。我已经成功创建了持久性API,EJB和所有必需的表。但是,当我为我的应用程序创建WebClient并将其与Enterprise应用程序集成并尝试运行它时,我收到以下错误:
java.lang.IllegalArgumentException:Servlet [
RegistrationPortImpl
]和 Servlet [RegistrationRequesterPortImpl
]具有相同的url模式
WebClient上只有默认的index.xhtml
文件,我还没有使用它集成到托管bean。
我只想在我进行任何预付款之前检查我的应用程序是否会在与企业应用程序集成之后运行。
答案 0 :(得分:0)
在@WebServlet
中添加了一个唯一的网址路径,例如@WebServlet("/port") @WebServlet("/requestport")
像这样注释每个servlet然后我相信不会发生这个问题。
答案 1 :(得分:0)
您可以在metadata-complete=true
标记中添加条目web-app
,如下所示:
<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,here和here。
也许您可以查看web.xml
中的网址格式以及您的应用使用的库。