如何使用 WLS Ant 任务构建包含策略文件的 EAR?

发布于 2024-07-15 00:56:53 字数 1041 浏览 11 评论 0原文

我一直在使用 JAX-WS 和 Weblogic Server,使用它们的 Ant 任务来构建可以部署在服务器上的 EAR 文件。 我已经获得了使用 JAX-WS 的基本 SOAP 调用,但现在我尝试通过 WS-Security 添加一些消息级安全性。

根据文档,有两种方法可以将安全策略添加到网页服务。 一种是在 Java 源代码本身上使用注释,但这意味着策略是永久设置的。 第二种方法是将策略文件添加到 EAR 文件中,然后允许管理员为部署后的 Web 服务设置策略。

虽然文档提到必须将策略文件放置在何处,它无法解释如何在 使用 Ant 进行构建时自动添加这些策略文件< /a>. 每次构建/重新部署 EAR 时手动添加策略文件在测试中会非常费力。 下面是我现在用来构建 EAR 文件的 Ant 代码:

<target name="build-service">
    <jwsc source" srcdir="java" destdir="${ear-dir}">
        <jws file="SoapService.java" type="JAXWS"/>
    </jwsc>
</target>

How can I 自动将带有策略文件的 EAR 构建到正确的位置? 我最感兴趣的是将其构建到 Java WAR 文件中的 WEB-INF/policies 中。 您可以假设我手头有策略文件,并且可以在构建之前参考它们。

I've been working with JAX-WS with Weblogic Server, using their Ant tasks to build EAR files that can be deployed on the server. I've gotten basic SOAP calls to work with JAX-WS, but now I'm trying to add some message-level security via WS-Security.

According to the documentation, there are two ways of adding security policies to web services. One is to use annotations on the Java source itself, but means that the policies are set forever. The second method is to add the policy files to the EAR file and then allow the administrator to set the policies for web services post-deployment.

While the documentation mentions where you must put the policy files, it fails to explain how to automatically add these policy files when doing a build with Ant. It would be entirely too laborious in testing to add the policy files manually every time I build/redeploy the EAR. Here's the Ant code I use right now to build the EAR file:

<target name="build-service">
    <jwsc source" srcdir="java" destdir="${ear-dir}">
        <jws file="SoapService.java" type="JAXWS"/>
    </jwsc>
</target>

How can I automatically build EAR with policy files into the right location? I'm most interested in building it into the WEB-INF/policies in the Java WAR file. You can assume I have the policy files on hand and can reference them before building.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

不打扰别人 2024-07-22 00:56:53

根据记录,答案是使用结合使用:

<target name="build-service">
    <jwsc srcdir="java" destdir="${ear-dir}">
        <module>
            <jws file="SoapService.java" type="JAXWS"/>
            <zipfileset dir="." prefix="WEB-INF/policies">
                <include name="mypolicy.xml"/>
            </zipfileset>
        </module>
    </jwsc>
</target>

For the record, the answer is to use <module> in conjunction with <zipfileset>:

<target name="build-service">
    <jwsc srcdir="java" destdir="${ear-dir}">
        <module>
            <jws file="SoapService.java" type="JAXWS"/>
            <zipfileset dir="." prefix="WEB-INF/policies">
                <include name="mypolicy.xml"/>
            </zipfileset>
        </module>
    </jwsc>
</target>
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文