![](/img/trans.png)
[英]How to pass Custom Authorization Header to my backend websocket service through WSO2 (API Manager)?
[英]How to setup and deploy WebSocket on WSO2 AS 5.2.1?
我有一個可運行的JAX-RS Web應用程序,該應用程序實現了一些RESTfull服務。 我已經在WSO2 Studio下開發了它,並使用WSO2 AS Web界面進行了部署,所有這些都非常簡單。
現在,我想在我的WebApp上添加打開WebSocket的可能性。 我沒有在WSO2 AS文檔中找到標准過程或示例。 我的問題是:
謝謝。
更新
我已經編寫了這個極其簡單的websocket應用程序:
import java.io.IOException;
import javax.websocket.OnMessage;
import javax.websocket.Session;
import javax.websocket.server.ServerEndpoint;
@ServerEndpoint("/test")
public class TestSocket {
@OnMessage
public void onMessage(Session session, String message, boolean last) {
try{
if(session.isOpen()){
session.getBasicRemote().sendText("Received -> [" + message + "]", last);
}
}catch(IOException e){
try{
session.close();
}catch(IOException e1){
}
}
}
}
如果我在Tomcat服務器上部署,則在我在WSO2 AS 5.3.0(快照)上部署時,它可以正確運行,WebSocket無法訪問。 我不明白我做錯了什么。
WSO2 AS 5.2.1具有Websocket(特定於tomcat)支持。 您可以在$AS_HOME/repository/deployment/server/webapps
文件夾中找到“示例” Webapp。
但是WSO2 AS 5.2.1中不提供標准(JSR356)Websocket支持。 它會在即將發布的WSO2 AS 5.3.0中提供。 WSO2 AS 5.3.0 Alpha已經發布,您可以使用Alpha Pack嘗試Web套接字支持。 啟動服務器,將瀏覽器指向http:// localhost:9763 / example / websocket / index.xhtml ,您將在此處找到四個Web套接字示例。 您可以查看WSO2 AS 5.3.0中有關新功能的發行郵件 。
正如@Rajkumar提到的,如果您需要使用基於JSR356的標准websocket,則必須使用WSO2-AS 5.3.0 Alpha。 但是您仍然可以將先前的wso2-as版本(5.2.1)用於特定於Tomcat的Websocket實現。
如果要使用jaxrs調用websocket,則可以在github-product-as中引用websocket測試用例
對於基於tomcat的websocket實現,您可以從tomcat來源或從https://github.com/wso2/product-as/tree/wso2appserver-parent-6.0.0/modules/samples/common/引用tomcat websocket示例webapp / src / main / java / websocket
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.