如何列出服务器上部署的所有Web服务?是否有任何全局命令用于列出相同的命令?
在我的服务中,我有以下共同路径:
path="vms/CaseServices"
path="vms/ActivityServices"
path="vms/FileDownloadServices"
并使用
访问它们http://localhost:8080/vms/CaseServices?wsdl
但是如何列出服务器上可用的所有Web服务,是否使用Java代码?
答案 0 :(得分:2)
在Mule中,您可以使用变压器:
public class HttpPathsTransformer extends AbstractMessageTransformer {
@Override
public Object transformMessage(MuleMessage message, String encoding) throws TransformerException {
StringBuilder sb = new StringBuilder("paths: ");
Collection<DefaultHttpListener> listener = muleContext.getRegistry().lookupObjects(DefaultHttpListener.class);
for (DefaultHttpListener l : listener) {
logger.info("path: " + l.getPath());
sb.append(System.lineSeparator()).append(l.getPath());
}
return sb.toString();
}
}
记录路径并将其作为String返回。
这些都是http路径,而不仅仅是网络服务。