Как вы создаете EAR с включенными файлами политики, используя WLS Ant Tasks?

StackOverflow https://stackoverflow.com/questions/608745

Вопрос

Я работал с JAX-WS с Weblogic Server, используя их Ant-задачи для создания файлов EAR, которые могут быть развернуты на сервере.Я получил базовые вызовы SOAP для работы с JAX-WS, но теперь я пытаюсь добавить некоторую безопасность на уровне сообщений с помощью WS-Security.

В соответствии с Документация, Существует два способа добавления политик безопасности в веб-службы.Один из них заключается в использовании аннотаций в самом исходном коде Java, но это означает, что политики устанавливаются навсегда.Второй метод заключается в добавлении файлов политики в файл EAR, а затем в разрешении администратору устанавливать политики для веб-служб после развертывания.

В то время как в документации упоминается куда вы должны поместить файлы политики, в нем не объясняется , как автоматически добавлять эти файлы политики , когда выполнение сборки с помощью Ant.Было бы слишком трудоемко при тестировании добавлять файлы политики вручную каждый раз, когда я создаю / повторно развертываю EAR.Вот код Ant, который я использую прямо сейчас для создания файла EAR:

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

Как я могу автоматически создать EAR с файлами политики в нужном месте?Меня больше всего интересует встроить это в WEB-INF / policies в файле Java WAR.Вы можете предположить, что у меня есть файлы политики под рукой, и я могу ссылаться на них перед сборкой.

Это было полезно?

Решение

Для справки, ответ заключается в использовании <module> в сочетании с <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>
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top