Я работаю над проектом, и в настоящее время мы переводим его с Spring на Spring Boot. У нас был клиентский компонент JAX-WS, который был автоматически подключен в контроллере, но теперь он говорит, что не может найти компонент такого типа. Ниже вы можете увидеть фрагменты кода, мне пришлось отредактировать информацию, так что извините, если какая-то ссылка на именование была нарушена.
У нас была конфигурация клиента JAX-WS в xml, описанная как:
<jaxws:client id="applyClient"
serviceClass="JaxClass"
address="jaxAddress" >
<jaxws:outInterceptors>
<bean class="org.apache.cxf.ws.security.wss4j.WSS4JOutInterceptor">
<constructor-arg>
<map>
<entry key="action" value="Signature Timestamp"/>
<entry key="signatureKeyIdentifier" value="DirectReference"/>
<entry key="passwordType" value="PasswordText" />
<entry key="signaturePropFile" value="signature.properties"/>
<entry key="user" value="userVal" />
<entry key="passwordCallbackRef">
<ref bean="passwordCallback"/>
</entry>
</map>
</constructor-arg>
</bean>
${openComment} <bean class="org.apache.cxf.interceptor.LoggingOutInterceptor" /> ${closeComment}
</jaxws:outInterceptors>
<jaxws:inInterceptors>
${openComment}<bean class="org.apache.cxf.interceptor.LoggingInInterceptor" /> ${closeComment}
</jaxws:inInterceptors>
</jaxws:client>
Этот класс обслуживания такой:
@WebService(targetNamespace = "Folder", name = "TestName")
@XmlSeeAlso({Folder.ObjectFactory.class, otherFolder.ObjectFactory.class})
public interface JaxClass {
@WebResult(...)
@RequestWrapper(...)
@WebMethod
@ResponseWrapper(...)
public java.lang.String updateGBFoaInformation(
@WebParam(...)
Folder.FoaInformation foaInformation
) throws ExchangeRequestValidationException, ExchangeInternalErrorException;
@WebResult(...)
@RequestWrapper(...)
@WebMethod
@ResponseWrapper(...)
public method2 setGBUserSession(
@WebParam(...)
Folder.GBUserSessionRequest gbUserSessionRequest
) throws ExchangeRequestValidationException,
ExchangeInternalErrorException;
}
А потом в классе Controller у нас было автоматическое подключение:
@RestController
public class TestController{
@Autowired
JaxClass applyClient;
...
Эта настройка работала, пока мы не начали обновление. Теперь мы получаем ошибку:
***************************
APPLICATION FAILED TO START
***************************
Description:
Field applyClient in TestController required a bean of type 'JaxClass' that could not be found.
Action:
Consider defining a bean of type 'JaxClass' in your configuration.
Просто был немного смущен, поскольку я провел прошлую неделю или около того, пытаясь решить эту проблему. Любая помощь или предложения приветствуются.