Как поменять в java веб сервисе .xml конфигурацию через код?

Опишу задачу. сервис поднимается по адресу

http://localhost:8080/monitoringEndpointMock

Мне надо написать код чтоб менялся порт (только порт) если порт занят. С этим я справился.


Я написал код который меняет порт адреса и поднимает сервер, но при сборке java файла выдаёт что адрес jaxws:client-а не соответствует.

После я узнал что адрес прописан в файле .xml и я не знаю как через джава код "перенастраивать" его ??

приведу весь .xml файл :

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:jaxws="http://cxf.apache.org/jaxws" xmlns:context="http://www.springframework.org/schema/context"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
                           http://www.springframework.org/schema/beans/spring-beans.xsd
                           http://cxf.apache.org/jaxws
                           http://cxf.apache.org/schemas/jaxws.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd">

    <context:annotation-config/>

    <import resource="classpath:META-INF/cxf/cxf.xml"/>
    <import resource="classpath:META-INF/cxf/cxf-servlet.xml"/>

    <jaxws:client id="monitoringService"
            serviceClass="ru.nsd.soa.iasmonitoringservice.IasMonitoringServicePortType"
            address="http://localhost:8080/monitoringEndpointMock" />

    <jaxws:endpoint address="/monitoringEndpointMock" implementor="#monitoringEndpointMock"/>

    <bean id="monitoringEndpointMock" class="ru.nsd.evoting.event.iasrop.MonitoringEndpointMock"/>

    <bean name="iasropConf" class="ru.nsd.evoting.common.configuration.Configuration">
        <constructor-arg index="0" value="nsd.iasrop.config"/>
        <constructor-arg index="1" value="~/event-logging/iasrop.properties"/>
    </bean>

</beans>

Как в java файле через код поменять прописанный в xml файле jaxws:address ??


Ответы (0 шт):