Как решить эту LinkageError в Tomcat 7, используя Axis 1 - PullRequest
0 голосов
/ 30 апреля 2019

У меня работает старая веб-служба Java, написанная на Apache Axis. Я кодирую клиентское приложение, которое отправит некоторые данные в эту развернутую службу в стиле SOAP. Я не могу подключиться к услуге из-за ошибки LinkageError.

Это мой клиентский звонок на веб-сервис:

    EBServicesBar remoteService = null;
    // try {

    GlobalConfiguration cg = globalConfigurationDao.findAll().get(0);

    URL url = new URL(cg.getUrlServicoAutbank());
    QName qNameServiceName = new QName("url here", cg.getQnameServicoAutbank());

    EBServicesBarService service = new EBServicesBarServiceLocator(
            cg.getWsdlServicoAutbank(), qNameServiceName);

    try {
        remoteService = service.getEBServicesBar();
    } catch (Exception e) {
        logger.error( e.getMessage());
    }

// Заглушки, сгенерированные Axis через WSDL-определение

/**
 * EBServicesBarService.java
 *
 * This file was auto-generated from WSDL
 * by the Apache Axis 1.4 Apr 22, 2006 (06:55:48 PDT) WSDL2Java emitter.
 */

package br.com.autbank;

public interface EBServicesBarService extends javax.xml.rpc.Service {
    public java.lang.String getEBServicesBarAddress();
    public br.com.autbank.EBServicesBar getEBServicesBar()
            throws javax.xml.rpc.ServiceException;
    public br.com.autbank.EBServicesBar getEBServicesBar(java.net.URL portAddress)
            throws javax.xml.rpc.ServiceException;
}

public interface EBServicesBar extends java.rmi.Remote {

    public br.com.autbank.TOIntegracaoRetornoTransfCC transfCC(
            java.lang.String coligada, java.lang.String agencia,
            java.lang.String codColigadaDeb, java.lang.String codAgenciaDeb,
            java.lang.String nroContaDeb, java.lang.String codColigadaCre,
            java.lang.String codAgenciaCre, java.lang.String nroContaCre,
            java.lang.String dataMovto, java.math.BigDecimal valor,
            java.lang.String tarifado, java.lang.String origem,
            java.lang.String sisOrigem, java.lang.String validaPtoCorte,
            java.lang.String codUsuario, java.lang.String validaSaldoCC,
            java.lang.String historicoDeb, java.lang.String historicoCred,
            java.lang.String complHistorico, java.lang.String autorizaLanctoRetro,
            java.lang.String numDocto, java.lang.String canalEntrada)
            throws java.rmi.RemoteException, br.com.autbank.TEException;

    public br.com.autbank.TOIntegracaoRetornoTED requisitaTED(java.lang.String agencia,
            java.lang.String codEvento, java.lang.String horaVencto,
            java.math.BigDecimal valor, java.lang.String agenciaDeb,
            java.lang.String contaDeb, java.lang.String bancoCredito,
            java.lang.String agenciaCred, java.lang.String contaCred,
            java.lang.String tipoContaCred, java.lang.String cnpjCpfCliCred,
            java.lang.String nomeCliCred, java.lang.String finalidade,
            java.lang.String historico, java.lang.String tarifado,
            java.lang.String validaPtoCorteSpb, java.lang.String codUsuario,
            java.lang.String cnpjCpfCliRem, java.lang.String nomeCliRem,
            java.lang.String cnpjCpfCliCred2, java.lang.String nomeCliCred2,
            java.lang.String codIdentdTransf, java.lang.String origem,
            java.lang.String sisOrigem, java.lang.String dataVencto,
            java.lang.String tipoPessoaCred, java.lang.String prioridade,
            java.lang.String dataAgendPag, java.lang.String debAutorizado,
            java.lang.String sensibilizaCC, java.lang.String nroBoleto,
            java.lang.String codCliente, java.lang.String tipoPessoaInvest,
            java.lang.String cnpjCpfInvest, java.lang.String nomeRzSocialInvest,
            java.lang.String complementoHistorico, java.lang.String numOrigem,
            java.lang.String subSistemaO, java.lang.String canalEntrada,
            java.lang.String numContratoOpeCred, java.lang.String modOpeCredPortd,
            java.lang.String ispbCred, java.lang.String nuPortdd,
            java.lang.String ispbPrestd, java.lang.String numBenfcINSSCliCredtd,
            java.lang.String tpBenfcINSS, java.lang.String numProtAvebcINSS,
            java.lang.String tpOpEmprtConsigd, java.math.BigDecimal vlrCredConsigd,
            java.math.BigDecimal vlrTarBcoCredtd)
            throws java.rmi.RemoteException, br.com.autbank.TEException;
  }

Ошибка

java.lang.LinkageError: нарушение ограничения загрузчика: при разрешении поле "service" загрузчик класса (экземпляр org / apache / catalina / loader / WebappClassLoader) ссылающегося класса, org / apache / axis / client / Stub и загрузчик классов (экземпляр java / net / URLClassLoader) для разрешенного типа поля sLoader различные объекты класса для этого типа

...