Webservice para crud de usuário

5 respostas
Luiz-SP

Olá Pessoal,

Estou tentando fazer rodar um webservice para CRUD de usuário, esse usuário é uma classe composta com atributos como nome, nascimento essas coisas e tem ainda uma classe com endereço, o ws levanta, mas quando tento atualizar o usuário com uma classe instanciada no cliente via webservice vem a exception abaixo, tenho quase certeza que isso tem haver com o fato da classe usuário ter outra classe como atributo, pois tenho um Facade do usuário que só tem atributos string que não dá essa exception, no wsdl geredo pelo wsgen, aparece a descrição do tipo composto tudo bonitinho, o que vc's acham? Alguém pode me dar uma mão?

javax.xml.ws.soap.
SOAPFaultException: Scheme 'htt' not registered.
    at com.sun.xml.internal.ws.fault.SOAP11Fault.getProtocolException(Unknown Source)
    at com.sun.xml.internal.ws.fault.SOAPFaultBuilder.createException(Unknown Source)
    at com.sun.xml.internal.ws.client.sei.SyncMethodHandler.invoke(Unknown Source)
    at com.sun.xml.internal.ws.client.sei.SyncMethodHandler.invoke(Unknown Source)
    at com.sun.xml.internal.ws.client.sei.SEIStub.invoke(Unknown Source)
    at $Proxy29.updateBorrower(Unknown Source)
    at br.com.exl.alephcssolution.clienteWS.Client.main(Client.java:28)
Caused by: java.lang.IllegalStateException: Scheme 'htt' not registered.
    at org.apache.http.conn.scheme.SchemeRegistry.getScheme(SchemeRegistry.java:73)
Meu webserver tá assim
@WebService
/**
 * This class is web service to create, and update, and delete 
 * a borrower in the Aleph. 
 * 
 * 
 * @author Luiz C. F. dos Santos
 */
public class MyWebService {

	@WebMethod
	public String updateUser(@WebParam(name = "user") User user) {

		XServer xserver = new XServer();

		try {
			xserver.borUser(User);
		} catch (IOException e) {
			e.printStackTrace();
			return "The user was not updated successfully";
		}
		return "The user was updated successfully";

	}
}
o Cliente é
public class Client {

	public static void main(String[] args) {

		MyWebService myws = new MyWebService()
				.getMyWebServicePort();
		User user = new User();
		user.setName("Luiz Claudio");
		Address address = new Address();
		z303.setStreet("Rua dos bobos");
		z303.setNumber("0");
		user.setAddress(address);
                user.updateUser(user);
        }
}

5 Respostas

F

Verifique as urls utilizadas.
Será que tem alguma como htt:// ao invés de http:// ?
Pelo menos é o que a msg de erro descreve.

Luiz-SP

fvslistas:
Verifique as urls utilizadas.
Será que tem alguma como htt:// ao invés de http:// ?
Pelo menos é o que a msg de erro descreve.

Pois é, já tinha pensando nisso, mas não tem nenhum htt ao invés de http, mas mesmo assim obrigado.

F

Tô ligado.
Viu tb nos arquivos de configurações .xml, nos JNDI, …?

Luiz-SP

fvslistas:
Tô ligado.
Viu tb nos arquivos de configurações .xml, nos JNDI, …?

Olhei cara, a unica coisa estranha é a tag abaixo do wsdl, mas como eu disse, quando eu mudo a classe User para um Facade de User que só tem String como parâmetro o negócio funciona, mesmo com essa tag estranha no wsdl. Um detalhes eu usei os wsimport e o wsgen para gerar as coisas.

Luiz-SP

Descobri, na verdade estava dando uma exception quando eu fazia mudança do usuário no banco!!! Cinco dias para descobrir, como é difícil debugar isso!

Criado 9 de junho de 2010
Ultima resposta 10 de jun. de 2010
Respostas 5
Participantes 2