Pergunta

Eu estou usando o Apache Axis para se conectar a minha aplicativo Java para um servidor web.Eu usei wsdl2java para criar stubs para mim, mas quando eu tento usar o stubs, eu recebo a seguinte exceção:

org.apache.eixo.ConfigurationException:Nenhum serviço chamado <web service name> está disponível

alguma idéia?

Foi útil?

Solução

Apenas um palpite, mas parece que a mensagem de erro é de relatórios que você deixou o serviço de nome em branco.Eu imagino o código que gera a mensagem de erro parecido com este:

throw new ConfigurationException("No service named" + serviceName + " is available");

Outras dicas

De acordo com o documentação ligados por @arnonym, essa exceção é um pouco enganador.Na primeira tentativa para encontrar o serviço de um ConfigurationException é lançada e pegou.Ela está registrada no nível de DEPURAÇÃO pelo ConfigurationException classe.Em seguida, outra tentativa é feita usando um método diferente para encontrar o serviço, que podem ter sucesso.A solução para isso é só alterar o nível de log no ConfigurationException classe para INFO em seu log4j.propriedades:

log4j.logger.org.apache.axis.ConfigurationException = INFO

Ele é uma exceção usado por Eixo de controle de fluxo.

http://wiki.apache.org/ws/FrontPage/Axis/DealingWithCommonExceptions --> org.apache.eixo.ConfigurationException:Não existe um serviço chamado XXX está disponível

Este é o meu código de aparência.Ele parece funcionar bem.Você está usando um localizador de serviço ou apenas criando seu serviço?

SomeServiceLocator locator = new SomeServiceLocator();
SomeService service = null;
try
{
    service = locator.getSomeServiceImplPort();
}
catch (ServiceException e)
{
    e.printStackTrace();
}

Eu não sei qual é a versão do Eixo que você está usando, mas eu estou usando Axis2 servidor e do cliente e o Java2WSDL criar uma predefinição de ponto de extremidade para o serviço em localhost.Se você criar o stub de cliente com WSDL2Java, o construtor padrão de stub será, em seguida, aponte para localhost.Se o serviço é em outro ponto de extremidade, você deve usar o construtor com o ponto de extremidade como parâmetro de...Talvez o problema não é que em tudo, mas como disse em outras respostas, sem o WSDL que você está usando como WSDL2Java de entrada, é difícil dizer.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top