Pessoa estou com o seguinte problema: qdo eu tento conectar no meu WS atraves do meu cliente ele me retorna o seguinte erro:
Fault: java.lang.NullPointerException
ja descobri aonde esta o problema(+/-) so nao sei como arrumar . hehe
eu tenho os seguintes codigos
ObjetoMensagem.java(Bean)
/*
* ObjetoMensagem.java
*
* Created on 21 de Setembro de 2006, 11:26
*
* To change this template, choose Tools | Template Manager
* and open the template in the editor.
*/
package br.com.dnasolution.objetos;
import java.util.ArrayList;
public class ObjetoMensagem {
private String tipoConsulta;
private int codigoTipoConsulta;
private String dataConsulta;
private String horaConsulta;
private int codigoInstituicao;
private String nomeInstituicao;
private int codigoUsuario;
private String nomeUsuario;
private ArrayList<String> campo1 = new ArrayList<String>();
private ArrayList<String> campo2 = new ArrayList<String>();
private ArrayList<String> campo3 = new ArrayList<String>();
private ArrayList<String> campo4 = new ArrayList<String>();
private ArrayList<String> campo5 = new ArrayList<String>();
private ArrayList<String> campo6 = new ArrayList<String>();
private ArrayList<String> campo7 = new ArrayList<String>();
private ArrayList<String> campo8 = new ArrayList<String>();
private ArrayList<String> campo9 = new ArrayList<String>();
private ArrayList<String> campo10 = new ArrayList<String>();
private ArrayList<String> campo11 = new ArrayList<String>();
private ArrayList<String> campo12 = new ArrayList<String>();
private ArrayList<String> campo13 = new ArrayList<String>();
private ArrayList<String> campo14 = new ArrayList<String>();
private ArrayList<String> campo15 = new ArrayList<String>();
public ObjetoMensagem(String tipoConsulta, int codigoTipoConsulta, String dataConsulta, String horaConsulta, int codigoInstituicao, String nomeInstituicao, int codigoUsuario, String nomeUsuario) {
this.tipoConsulta = tipoConsulta;
this.codigoTipoConsulta = codigoTipoConsulta;
this.dataConsulta = dataConsulta;
this.horaConsulta = horaConsulta;
this.codigoInstituicao = codigoInstituicao;
this.nomeInstituicao = nomeInstituicao;
this.codigoUsuario = codigoUsuario;
this.nomeUsuario = nomeUsuario;
}
public int getCodigoTipoConsulta() {
return codigoTipoConsulta;
}
public int getCodigoUsuario() {
return codigoUsuario;
}
public String getDataConsulta() {
return dataConsulta;
}
public String getHoraConsulta() {
return horaConsulta;
}
public String getNomeInstituicao() {
return nomeInstituicao;
}
public String getNomeUsuario() {
return nomeUsuario;
}
public String getTipoConsulta() {
return tipoConsulta;
}
public void setCodigoInstituicao(int codigoInstituicao) {
this.codigoInstituicao = codigoInstituicao;
}
public void setTipoConsulta(String tipoConsulta) {
this.tipoConsulta = tipoConsulta;
}
public void setNomeUsuario(String nomeUsuario) {
this.nomeUsuario = nomeUsuario;
}
public void setCodigoTipoConsulta(int codigoTipoConsulta) {
this.codigoTipoConsulta = codigoTipoConsulta;
}
public void setCodigoUsuario(int codigoUsuario) {
this.codigoUsuario = codigoUsuario;
}
public void setDataConsulta(String dataConsulta) {
this.dataConsulta = dataConsulta;
}
public void setNomeInstituicao(String nomeInstituicao) {
this.nomeInstituicao = nomeInstituicao;
}
public void setHoraConsulta(String horaConsulta) {
this.horaConsulta = horaConsulta;
}
public int getCodigoInstituicao() {
return codigoInstituicao;
}
public ArrayList<String> getCampo1() {
return campo1;
}
public ArrayList<String> getCampo10() {
return campo10;
}
public ArrayList<String> getCampo11() {
return campo11;
}
public ArrayList<String> getCampo12() {
return campo12;
}
public ArrayList<String> getCampo13() {
return campo13;
}
public ArrayList<String> getCampo14() {
return campo14;
}
public ArrayList<String> getCampo15() {
return campo15;
}
public ArrayList<String> getCampo3() {
return campo3;
}
public ArrayList<String> getCampo4() {
return campo4;
}
public ArrayList<String> getCampo5() {
return campo5;
}
public ArrayList<String> getCampo6() {
return campo6;
}
public ArrayList<String> getCampo7() {
return campo7;
}
public ArrayList<String> getCampo8() {
return campo8;
}
public ArrayList<String> getCampo2() {
return campo2;
}
public ArrayList<String> getCampo9() {
return campo9;
}
public void setCampo1(ArrayList<String> campo1) {
this.campo1 = campo1;
}
public void setCampo10(ArrayList<String> campo10) {
this.campo10 = campo10;
}
public void setCampo11(ArrayList<String> campo11) {
this.campo11 = campo11;
}
public void setCampo12(ArrayList<String> campo12) {
this.campo12 = campo12;
}
public void setCampo13(ArrayList<String> campo13) {
this.campo13 = campo13;
}
public void setCampo14(ArrayList<String> campo14) {
this.campo14 = campo14;
}
public void setCampo15(ArrayList<String> campo15) {
this.campo15 = campo15;
}
public void setCampo2(ArrayList<String> campo2) {
this.campo2 = campo2;
}
public void setCampo3(ArrayList<String> campo3) {
this.campo3 = campo3;
}
public void setCampo4(ArrayList<String> campo4) {
this.campo4 = campo4;
}
public void setCampo5(ArrayList<String> campo5) {
this.campo5 = campo5;
}
public void setCampo6(ArrayList<String> campo6) {
this.campo6 = campo6;
}
public void setCampo7(ArrayList<String> campo7) {
this.campo7 = campo7;
}
public void setCampo8(ArrayList<String> campo8) {
this.campo8 = campo8;
}
public void setCampo9(ArrayList<String> campo9) {
this.campo9 = campo9;
}
}
e o WS
funcaoConsulta.java(WS)
package br.com.dnasolution.consulta;
import br.com.dnasolution.dao.FuncoesBanco;
import br.com.dnasolution.objetos.ObjetoMensagem;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.ArrayList;
/**
*
* @author Administrador
*/
public class FuncaoConsulta {
public ObjetoMensagem[] getConsulta(){
int codigoInstituicao = 5;
int codigoUltimaConsulta = 1;
ArrayList<ObjetoMensagem> consultas = new ArrayList<ObjetoMensagem>();
ArrayList<String> campo1 = new ArrayList<String>();
ArrayList<String> campo2 = new ArrayList<String>();
ArrayList<String> campo3 = new ArrayList<String>();
ArrayList<String> campo4 = new ArrayList<String>();
ArrayList<String> campo5 = new ArrayList<String>();
ArrayList<String> campo6 = new ArrayList<String>();
ArrayList<String> campo7 = new ArrayList<String>();
ArrayList<String> campo8 = new ArrayList<String>();
ArrayList<String> campo9 = new ArrayList<String>();
ArrayList<String> campo10 = new ArrayList<String>();
ArrayList<String> campo11 = new ArrayList<String>();
ArrayList<String> campo12 = new ArrayList<String>();
ArrayList<String> campo13 = new ArrayList<String>();
ArrayList<String> campo14 = new ArrayList<String>();
ArrayList<String> campo15 = new ArrayList<String>();
boolean retorno = false;
ObjetoMensagem objetoMensagem;
PreparedStatement comandoBuscaMensagem = null, comandoBuscaItemMensagem = null;
ResultSet retornoMensagem = null, retornoItemMensagem = null;
try{
Connection conexao = FuncoesBanco.getInstance().conectaDB();
comandoBuscaMensagem = conexao.prepareStatement("SELECT " +
"tb_mensagem_instituicao.cd_mensagem_instituicao," +
"tb_mensagem_instituicao.cd_tipo_mensagem_instituicao," +
"TO_CHAR(tb_mensagem_instituicao.dt_mensagem_instituicao,'DD/MM/YYYY') as dt_mensagem," +
"TO_CHAR(tb_mensagem_instituicao.hr_mensagem_instituicao,'HH24:MI:SS') as hr_mensagem," +
"tb_mensagem_instituicao.cd_instituicao_mensagem_instituicao," +
"tb_mensagem_instituicao.nm_instituicao_mensagem_instituicao," +
"tb_mensagem_instituicao.cd_usuario_mensagem_instituicao," +
"tb_mensagem_instituicao.nm_usuario_mensagem_instituicao," +
"tb_tipo_mensagem_instituicao.nm_tipo_mensagem_instituicao" +
" FROM " +
"tb_destinatario_mensagem_instituicao " +
"JOIN " +
" tb_mensagem_instituicao ON tb_mensagem_instituicao.cd_mensagem_instituicao = tb_destinatario_mensagem_instituicao.cd_mensagem_instituicao " +
"JOIN " +
"tb_tipo_mensagem_instituicao ON tb_tipo_mensagem_instituicao.cd_tipo_mensagem_instituicao = tb_mensagem_instituicao.cd_tipo_mensagem_instituicao" +
" WHERE " +
"cd_destinatatio_mensagem = ?" +
" AND " +
"tb_mensagem_instituicao.cd_mensagem_instituicao >= ?");
comandoBuscaMensagem.setInt(1,codigoInstituicao);
comandoBuscaMensagem.setInt(2,codigoUltimaConsulta);
retornoMensagem = comandoBuscaMensagem.executeQuery();
comandoBuscaItemMensagem = conexao.prepareStatement("SELECT " +
"tb_item_mensagem_instituicao.* " +
"FROM " +
"tb_item_mensagem_instituicao " +
"WHERE " +
" cd_mensagem_instituicao = ?");
while(retornoMensagem.next()){
objetoMensagem = new ObjetoMensagem(retornoMensagem.getString("nm_tipo_mensagem_instituicao"),retornoMensagem.getInt("cd_tipo_mensagem_instituicao"),
retornoMensagem.getString("dt_mensagem"),retornoMensagem.getString("hr_mensagem"),retornoMensagem.getInt("cd_instituicao_mensagem_instituicao"),
retornoMensagem.getString("nm_instituicao_mensagem_instituicao"),retornoMensagem.getInt("cd_usuario_mensagem_instituicao"),retornoMensagem.getString("nm_usuario_mensagem_instituicao"));
comandoBuscaItemMensagem.setInt(1,retornoMensagem.getInt("cd_mensagem_instituicao"));
retornoItemMensagem = comandoBuscaItemMensagem.executeQuery();
while(retornoItemMensagem.next()){
campo1.add(retornoItemMensagem.getString("campo1"));
campo2.add(retornoItemMensagem.getString("campo2"));
campo3.add(retornoItemMensagem.getString("campo3"));
campo4.add(retornoItemMensagem.getString("campo4"));
campo5.add(retornoItemMensagem.getString("campo5"));
campo6.add(retornoItemMensagem.getString("campo6"));
campo7.add(retornoItemMensagem.getString("campo7"));
campo8.add(retornoItemMensagem.getString("campo8"));
campo9.add(retornoItemMensagem.getString("campo9"));
campo10.add(retornoItemMensagem.getString("campo10"));
campo11.add(retornoItemMensagem.getString("campo12"));
campo12.add(retornoItemMensagem.getString("campo12"));
campo13.add(retornoItemMensagem.getString("campo13"));
campo14.add(retornoItemMensagem.getString("campo14"));
campo15.add(retornoItemMensagem.getString("campo15"));
}
objetoMensagem.setCampo1(campo1);
objetoMensagem.setCampo2(campo2);
objetoMensagem.setCampo3(campo3);
objetoMensagem.setCampo4(campo4);
objetoMensagem.setCampo5(campo5);
objetoMensagem.setCampo6(campo6);
objetoMensagem.setCampo7(campo7);
objetoMensagem.setCampo8(campo8);
objetoMensagem.setCampo9(campo9);
objetoMensagem.setCampo10(campo10);
objetoMensagem.setCampo11(campo11);
objetoMensagem.setCampo12(campo12);
objetoMensagem.setCampo13(campo13);
objetoMensagem.setCampo14(campo14);
objetoMensagem.setCampo15(campo15);
consultas.add(objetoMensagem);
}
}catch(Exception e){
System.out.println(e.getMessage());
}
return consultas.toArray(new ObjetoMensagem[consultas.size()]);
}
}
e o meu cliente e o seguinte
try{
URL url = new URL("http://localhost:8080/AgenteServidor/services/AgenteServidor?wsdl");
Client cliente = new Client(url);
Object[] resultado = cliente.invoke("getConsulta",null);
DOMUtils.writeXml((Document) resultado[0], System.out);
}catch(Exception e){
System.out.println(e.getMessage());
}
o problema se encontra aqui (no meu WS):
objetoMensagem.setCampo1(campo1);
objetoMensagem.setCampo2(campo2);
objetoMensagem.setCampo3(campo3);
objetoMensagem.setCampo4(campo4);
objetoMensagem.setCampo5(campo5);
objetoMensagem.setCampo6(campo6);
objetoMensagem.setCampo7(campo7);
objetoMensagem.setCampo8(campo8);
objetoMensagem.setCampo9(campo9);
objetoMensagem.setCampo10(campo10);
objetoMensagem.setCampo11(campo11);
objetoMensagem.setCampo12(campo12);
objetoMensagem.setCampo13(campo13);
objetoMensagem.setCampo14(campo14);
objetoMensagem.setCampo15(campo15);
se eu comentar essas linhas ele da certo, se eu deixar que execute ele me retorna o erro, e o estranho e q se eu rodar o meu WS normalmente ele executa certinho… nao da erro…
espero que alguem possa me ajudar
tks