WebServiceException: метод beaInvoke предоставляется как WebMethod. - PullRequest
0 голосов
/ 18 декабря 2018

Ниже приведен фрагмент кода .., который должен динамически вызывать WSDL на другом сервере, но в момент вызова

(int i = webServiceModuleService.notificationRecieved("xyz");)

возвращаемое исключение: (

примечание: у меня нет ни одногоМетод beaInvoke в моем сервисе: |

    public static void main(String[] args) {

    java.sql.Connection conn = null;
    InitialContext context;

    try {

        context = new InitialContext();

        DataSource ds = (DataSource) context.lookup("jdbc/dataSourceDS");

        conn = ds.getConnection();
    } catch (SQLException e) {
    } catch (NamingException e) {
    }
    QueryRunner run = new QueryRunner();
    SampleResultSetHandler h = new SampleResultSetHandler();
    Object[] res = null;

    try {
        res = run.query(conn, "select SERVER_IP,SERVER_PORT from SERVER where UPPER(SERVER_NAME)=? ", h, "test");
    } catch (SQLException e) {
    }

    String ip = res[0].toString();
    String port = res[1].toString();

    String endpointURL = "http://" + ip + ":" + port + "/context-root/WebServiceModuleService";

    try {

        URL tmpURL = new URL(endpointURL + "?wsdl");
        System.err.println(tmpURL);

        WebServiceModuleService_Service webServiceModuleService_Service = new WebServiceModuleService_Service(tmpURL,
                                                                                                              new QName("/org/parsisys/test/mina/model/services/common/",
                                                                                                                        "WebServiceModuleService"));
        WebServiceModuleService webServiceModuleService = null;
        webServiceModuleService = webServiceModuleService_Service.getWebServiceModuleServiceSoapHttpPort();

        BindingProvider bp = (BindingProvider) webServiceModuleService;
        bp.getRequestContext().put(BindingProvider.ENDPOINT_ADDRESS_PROPERTY, endpointURL);

        // Configure credential providers
        Map<String, Object> requestContext = ((BindingProvider) webServiceModuleService).getRequestContext();

        try {
            setPortCredentialProviderList(requestContext);
        } catch (Exception ex) {
            ex.printStackTrace();
        }

        //Call WebService ... ==> Exception :(
        int i = webServiceModuleService.notificationRecieved("xyz");

        //logp("successfully call the webservice for [ip&port:" + ip + ":" + port + "] [transid : " +transid + "]");

    } catch (Exception e) {
        //log
        //TODO: Clean This
        System.err.println(e.getMessage());
        e.printStackTrace();
        return;
    }
}

@Generated("Oracle JDeveloper")
public static void setPortCredentialProviderList(Map<String, Object> requestContext) throws Exception {
    // TODO - Provide the required credential values
    String username = "";
    String password = "";
    String clientKeyStore = "";
    String clientKeyStorePassword = "";
    String clientKeyAlias = "";
    String clientKeyPassword = "";
    String serverKeyStore = "";
    String serverKeyStorePassword = "";
    String serverKeyAlias = "";
    List<CredentialProvider> credList = new ArrayList<CredentialProvider>();

    // Add the necessary credential providers to the list

    // Code commented out due to empty username/password value found in the credential.
    // credList.add(getUNTCredentialProvider(username, password));

    // Code commented out due to empty server keystore value found in the credential.
    // credList.add(getBSTCredentialProvider(clientKeyStore, clientKeyStorePassword, clientKeyAlias, clientKeyPassword, serverKeyStore, serverKeyStorePassword, serverKeyAlias, requestContext));

    credList.add(getSAMLTrustCredentialProvider());

    requestContext.put(WSSecurityContext.CREDENTIAL_PROVIDER_LIST, credList);
}

@Generated("Oracle JDeveloper")
public static CredentialProvider getSAMLTrustCredentialProvider() {
    return new SAMLTrustCredentialProvider();
}

Дневной динамический вызов веб-службы генерируется с помощью jdeveloper, и он работает в клиентском тестере, но в моем модуле, когда я вызываю исключение возврата веб-службы: /

StackTraceis: ↓

Метод beaInvoke предоставляется как WebMethod, но в wsdl нет соответствующей операции wsdl с именем {/ org / parsisys / test / mina / model / services / common /} beaInvoke:portType {/ org / parsisys / test / mina / model / services / common /} WebServiceModuleService javax.xml.ws.WebServiceException: метод beaInvoke представлен как WebMethod, но нет соответствующей операции wsdl с именем {/ org / parsisys / test/ mina / model / services / common /} beaInvoke в wsdl: portType {/ org / parsisys / test / mina / model / services / common /} WebServiceModuleService на com.sun.xml.ws.model.JavaMethodImpl.freeze (JavaMethodImpl.java:382) в com.sun.xml.ws.model.AbstractSEIModelImpl.freeze (AbstractSEIModelImpl.java:124) в com.sun.xml.ws.model.RuntimeModeler.buildRuntimeModel (RuntimeMode.ode336) на com.sun.xml.ws.db.DatabindingImpl. (DatabindingImpl.java:99) на com.sun.xml.ws.db.DatabindingProviderImpl.create (DatabindingProviderImpl.java:74) на com.sun.xml.ws.db.DatabindingProviderImpl.create (DatabindingProviderImpl.java:58) в com.sun.xml.ws.db.DatabindingFactoryImpl.createRuntime (DatabindingFactoryImpl.java:120) в com.sun.xml.ws.client.Wunb (WSServiceDelegate.java:882) на com.sun.xml.ws.client.WSServiceDelegate.createSEIPortInfo (WSServiceDelegate.java:899) на com.sun.xml.ws.client.WSServiceDelegate.addSEI (WSSeravaDeleg) (WSServiceDeleg).sun.xml.ws.client.WSServiceDelegate.getPort (WSServiceDelegate.java:451) на weblogic.wsee.jaxws.spi.WLSProvider $ ServiceDelegateImpl.internalGetPort (WLSProvider.java:1698) на weblogic.ws.s.$ ServiceDelegateImpl $ PortClientInstanceFactory.createClientInstance (WLSProvider.java:1769) по адресупо адресу weblogic.wsee.jaxws.spi.WLSProvider $ ServiceDelegateImpl $ 3.apply (WLSProvider.java:1555) по адресу weblogic.wsee.jaxws.spi.WLSProvider $ ServiceDelegateImpl $ 3.apply (WLSProvider.java:1517s.ax.wax.wax.w.gic..spi.ClientIdentityRegistry.initClientIdentityFeatureAndCall (ClientIdentityRegistry.java:1456) в weblogic.wsee.jaxws.spi.WLSProvider $ ServiceDelegateImpl.getPort (WLSProvider.java:1513) в com.sun.xml.ws.client.WSServiceDelegate.getPort (WSServiceDelegate.java: 420) по адресу weblogic.wsee.jaxws.spi.WLSProvider $ ServiceDelegateImpl.getPort (WLSProvider.java:1477) по адресу com.sun.xml.ws.client.WSServiceDelegate.getPort (WSServiceDelegate.java:402) по адресу jav.xml.ws.Service.getPort (Service.java:119) в org.parsisys.test.mina.model.service.WebServiceModuleService_Service.beaInvokeSuper (WebServiceModuleService_Service.java) в org.parsisys.test.mina.model.service.WebServiceModuleService_Service $ beaVersion0_31.getWebServiceModuleServiceSoapHttpPort (WebServiceModuleService_Service.java:51) в org.parsisys.test.mina.model.service.WebServiceModuleService_Service.getWebServiceModuleServiceSoapHttpPort (WebServiceModuleService_Service.java) по адресу org.parsisys.test.mina.files.notification.queue.NotificationQueueRectained $ beaVersion0_11.onMessage (NotificationQueueRectained.java:330) по адресу org.parsisys.test.mineveessue.Nectification.test.mina.NotificationQueueRectained.java) на weblogic.jms.client.JMSSession.onMessage (JMSSession.java:5107) на weblogic.jms.client.JMSSession.execute (JMSSession.java:4775)на weblogic.jms.client.JMSSession.executeMessage (JMSSession.java:4170) на weblogic.jms.client.JMSSession.access $ 000 (JMSSession.java:127) на weblogic.jms.client.JMSSession $ UseForRunnable.run (JMS).Java: 5627) в weblogic.work.SelfTuningWorkManagerImpl $ WorkAdapterImpl.run (SelfTuningWorkManagerImpl.java:666) в weblogic.invocation.ComponentInvocationContextManager._runAs (ComponentInvocationContextManager.java:348) в weblogic.invocation.ComponentInvocationContextManager.runAs (ComponentInvocationContextManager.java:333) в weblogic.work.LivePartitionUtility.doRunWorkUnderContext (LivePartitionUtility.java:54) в weblogic.work.PartitionUtility.runWorkUnderContext (PartitionUtility.java:41) в веб-логике.ExecuteThread.execute (ExecuteThread.java:406) на weblogic.work.ExecuteThread.run (ExecuteThread.java:346)

, пожалуйста, помогите мне.Тпй

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...