我一直在使用带有 Weblogic Server 的 JAX-WS,使用他们的 Ant 任务来构建可以部署在服务器上的 EAR 文件。我已经获得了使用 JAX-WS 的基本 SOAP 调用,但现在我正在尝试通过 WS-Security 添加一些消息级安全性。
根据文档,有两种方法可以向 Web 服务添加安全策略。一种是在 Java 源代码本身上使用注释,但这意味着策略是永久设置的。第二种方法是将策略文件添加到 EAR 文件中,然后允许管理员在部署后设置 Web 服务的策略。
虽然文档提到了必须将策略文件放在哪里,但它没有解释在使用 Ant 进行构建时如何自动添加这些策略文件。每次构建/重新部署 EAR 时手动添加策略文件的测试完全太费力了。这是我现在用来构建 EAR 文件的 Ant 代码:
<target name="build-service">
<jwsc source" srcdir="java" destdir="${ear-dir}">
<jws file="SoapService.java" type="JAXWS"/>
</jwsc>
</target>
如何将带有策略文件的 EAR 自动构建到正确的位置?我最感兴趣的是将它构建到 Java WAR 文件中的 WEB-INF/policies 中。您可以假设我手头有策略文件,并且可以在构建之前参考它们。