Web Services Web服务默认URI异常:“uri”不能为空

ef1yzkbh  于 2022-11-15  发布在  其他
关注(0)|答案(2)|浏览(198)

我正在使用Spring WebServiceTemplate使用Soap WebService &下面是Bean创建和Bean类,但不知道为什么我无法获得默认URI的值。有人能帮助解决这个问题吗?
ServiceContext.java

@Bean
    public Jaxb2Marshaller marshaller() {
        Jaxb2Marshaller marshaller = new Jaxb2Marshaller();
        marshaller.setContextPath("com.canaldigital.tsi.schema.psd.psd_managecustomer.v2");        
        return marshaller;
    }

    @Bean
    public SaajSoapMessageFactory messageFactory() {
    SaajSoapMessageFactory factory=new SaajSoapMessageFactory();

    factory.setSoapVersion(SoapVersion.SOAP_12);
        return factory;
    }    

     @Bean
    public ManageService voucherService(Jaxb2Marshaller marshaller,SaajSoapMessageFactory messageFactory) {
         ManageService service = new ManageService();

        service.setDefaultUri("http://localhost:7001/CustomerService?WSDL");
        service.setMarshaller(marshaller);
        service.setUnmarshaller(marshaller);
        service.setMessageFactory(messageFactory);
        return service;
    }

ManageService.java

public class ManageService extends WebServiceGatewaySupport {

    try{

    System.out.println("Finalyy calllingggg service: "+getWebServiceTemplate());    
    System.out.println("WebService template URI is: ---- "+getWebServiceTemplate().getDefaultUri());

    JAXBElement<GetCustomerInfoRequestType> mustangRequst=new createGetCustomerInfoRequest(customer);

     (JAXBElement<GetCustomerInfoResponseType>) getWebServiceTemplate().marshalSendAndReceive(mustangRequst);

    }catch(Exception e){

        e.printStackTrace();

         }

    }
nwwlzxa7

nwwlzxa71#

当您调用扩展WebServiceGatewaySupport的客户端时,应该使用@Autowired

8oomwypt

8oomwypt2#

检查服务上是否没有@Service注解。

相关问题