我正在尝试部署一个使用websockets api到Weblogic的EAR。EAR由一个分解的web应用程序和几个EJB模块组成。由于某种原因,我不能连接到websocket端点,我得到一个404错误。我从Java.net下载了一个带有web套接字的示例web应用程序,用我的套接字端点替换了它们,它可以工作,所以我排除了代码问题。与WAR相比,使用EAR时,web套接字的结构或部署有什么不同吗?
ps: Struts被用作web框架,但不应该干扰。
我使用了使用JAVAEE 5的旧项目。现在使用JAVAEE7,我有同样的问题与404。最后,我通过修改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">
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
id="WebApp_ID" version="3.1">