デプロイメントでは、WebサービスのURLはhttp:// localhost:8080 / [context-root]/[serviceName]です。context-rootは特にプロジェクトの名前ですが、それ以外の場合はWEB-INFのsun-web.xmlにのみ表示されます。この情報をJavaレイヤーに取得するにはどうすればよいですか?プログラムでWebサービスのURLを取得する必要がありますが、現時点で欠落している情報はcontext-rootだけです。
1071 次
1 に答える
2
これを行う方法は次のとおりです。このコードをサービスクラスで想定する
@Resource
WebServiceContext wsContext;
@WebMethod
public String myServiceOperation(){
MessageContext context = wsContext.getMessageContext();
HttpServletRequest res = (HttpServletRequest) context.get(MessageContext.SERVLET_REQUEST) ;
System.out.println(" Context:path "+res.getContextPath());
}
これにより、コンソールへのコンテキストパスが出力されます。
于 2012-05-11T09:19:46.047 に答える