通过Java代码禁用已部署的Web服务

时间:2012-03-30 08:05:09

标签: web-services glassfish jax-ws

我使用部署在Glassfish Web服务器和Netbeans IDE上的JAX-WS Web服务。我们提供了使用IDE中的管理控制台或服务选项卡禁用或取消部署部署到Glassfish Web服务器上的Web服务的规定。这看起来是某种硬件中断。我希望通过接口上的某些外部命令实现相同的功能,即通过Java代码禁用已部署的Web服务。是否有通过软件中断或任何其他方式获得此类结果的机制?

1 个答案:

答案 0 :(得分:1)

您可以保留服务器端的discoveryAllowed属性等配置设置,就像在DB中一样。 您可以决定是否允许用户调用Web方法。在web方法中添加beelow代码:

如果 discoveryAllowed false ,请拨打以下代码:

MessageContext mc = context.getMessageContext();
HttpServletResponse resp = (HttpServletResponse) mc.get(MessageContext.SERVLET_RESPONSE);
resp.setContentType("text/plain");
resp.sendError(HttpServletResponse.SC_NOT_FOUND, "Web service is disabled.");

如果 discoveryAllowed 为真,则允许继续执行代码。