Java.lang.NullPointerException

E ai Galera,

Minha 1° vez aqui no GUJ e estou com uma dúvida…estou desenvolvendo uma aplicação com o eclipse, tenho uma classe Principal que é a interface da aplicação e estou querendo acessar um método atualize() de outra classe chamada DeletaFiles.

O trecho da Principal:

public static void atualize(){
			 	    
		    File diretorio = new File(System.getenv("systemroot")+"\system32\spool\printers\"); 
	        File[]  arquivos = diretorio.listFiles(); 
			int aux = 0;
	        String output1 = "";
			if(arquivos != null){ 
				System.out.println("Verificando se há arquivos\n");
				int length = arquivos.length;
				output1 += "Arquivos: \n";
				for(int i = 0; i < length; ++i){ 
					File f = arquivos[i];
					if(f.isFile()){ 
		              output1 += f.getName()+"\n";
		              aux++;
			        }
			   }   
				System.out.println("Tentando jogar no JTextPane\n");
				Principal vai = new Principal();
			try{	
             vai.jTextArea.setText(output1)	;
			}catch (NullPointerException err){
            	 System.out.println(""+err);
             }
			
             if(aux>=1){
              try{
            	vai.jTextField.setText("Há pelo menos " + aux/2 + " arquivos presos na fila de impressão");
                vai.jButton1.setEnabled(true);
                vai.jMenuItem1.setEnabled(true);
              }catch (NullPointerException err){
             	 System.out.println(""+err);
              } 
                
             }
             else if(aux==0){
               try{	 
             	vai.jTextField.setText("Não há arquivos presos na fila de impressão");
             	vai.jButton1.setEnabled(false);
             	vai.jMenuItem1.setEnabled(false);
              }catch (NullPointerException err){
             	 System.out.println(""+err);
              } 	
             }
			
		}
	}

Na Classe DeletaFiles eu chamo o método da seguinte forma:


 Principal.atualize();

e ao rodar aparece o seguinte erro:

Exception in thread “Timer-0” java.lang.NullPointerException
at Fila.Principal.atualize(Principal.java:591)
at Fila.DeletaFiles$RemindTask.run(DeletaFiles.java:87)
at java.util.TimerThread.mainLoop(Unknown Source)
at java.util.TimerThread.run(Unknown Source)

se eu tirar o tratamento de exceção.

Como eu deveria proceder neste caso?

Desde já Agradeço.

qual parte do código ai de cima é a linha 591?

que pode ter acontecido é que ele não achou o diretório, dai você manda listar os arquivos dele é da o Nullpointer

Quando tu chama o método atualize, a janela Principal já está aberta?

O que o construtor da classe Principal faz, ele cria(instancia) algum novo componente (campo de texto, etc)?

Me parece que você, dentro do método atualiza(), cria uma nova intancia de Principal e tenta acessar um atributo que não foi instanciado.

Pq vc não usa a opção de debug do Eclipse e roda o programa passo-a-passo?

[quote=lordssa]E ai Galera,

Minha 1° vez aqui no GUJ e estou com uma dúvida…estou desenvolvendo uma aplicação com o eclipse, tenho uma classe Principal que é a interface da aplicação e estou querendo acessar um método atualize() de outra classe chamada DeletaFiles.

O trecho da Principal:

public static void atualize(){
			 	    
		    File diretorio = new File(System.getenv("systemroot")+"\system32\spool\printers\"); 
	        File[]  arquivos = diretorio.listFiles(); 
			int aux = 0;
	        String output1 = "";
			if(arquivos != null){ 
				System.out.println("Verificando se há arquivos\n");
				int length = arquivos.length;
				output1 += "Arquivos: \n";
				for(int i = 0; i < length; ++i){ 
					File f = arquivos[i];
					if(f.isFile()){ 
		              output1 += f.getName()+"\n";
		              aux++;
			        }
			   }   
				System.out.println("Tentando jogar no JTextPane\n");
				Principal vai = new Principal();
			try{	
             vai.jTextArea.setText(output1)	;
			}catch (NullPointerException err){
            	 System.out.println(""+err);
             }
			
             if(aux>=1){
              try{
            	vai.jTextField.setText("Há pelo menos " + aux/2 + " arquivos presos na fila de impressão");
                vai.jButton1.setEnabled(true);
                vai.jMenuItem1.setEnabled(true);
              }catch (NullPointerException err){
             	 System.out.println(""+err);
              } 
                
             }
             else if(aux==0){
               try{	 
             	vai.jTextField.setText("Não há arquivos presos na fila de impressão");
             	vai.jButton1.setEnabled(false);
             	vai.jMenuItem1.setEnabled(false);
              }catch (NullPointerException err){
             	 System.out.println(""+err);
              } 	
             }
			
		}
	}

Na Classe DeletaFiles eu chamo o método da seguinte forma:


 Principal.atualize();

e ao rodar aparece o seguinte erro:

Exception in thread “Timer-0” java.lang.NullPointerException
at Fila.Principal.atualize(Principal.java:591)
at Fila.DeletaFiles$RemindTask.run(DeletaFiles.java:87)
at java.util.TimerThread.mainLoop(Unknown Source)
at java.util.TimerThread.run(Unknown Source)

se eu tirar o tratamento de exceção.

Como eu deveria proceder neste caso?

Desde já Agradeço.

[/quote]

Na classe Principal está todas as instâncias dos componentes como o JTextArea:

public JTextArea getJTextArea() {
		if (jTextArea == null) {
			jTextArea = new JTextArea();
			jTextArea.setBounds(new Rectangle(17, 68, 316, 177));
			jTextArea.setEditable(false);
			jTextArea.setToolTipText("Lista de Documentos na Fila de Impressão ");
		}
		return jTextArea;
	}

E eu instancio a classe Principal no Atualize porque ele é um método estático.

A linha 591 é esta:

vai.jTextArea.setText(output1);

tente usar esse teu get invez de ir diretamente ao textArea…

troque isso:

vai.jTextArea.setText(output1); 

por:

vai.getJTextArea().setText(output1); 

blz jingle… A exceção desapareçeu!

public static void atualize(){
			 	    
		    File diretorio = new File(System.getenv("systemroot")+"\system32\spool\printers\"); 
	        File[]  arquivos = diretorio.listFiles(); 
			int aux = 0;
	        String output1 = "";
			if(arquivos != null){ 
				System.out.println("Verificando se há arquivos\n");
				int length = arquivos.length;
				output1 += "Arquivos: \n";
				for(int i = 0; i < length; ++i){ 
					File f = arquivos[i];
					if(f.isFile()){ 
		              output1 += f.getName()+"\n";
		              aux++;
			        }
			   }   
				System.out.println("Tentando jogar no JTextPane\n");
				Principal vai = new Principal();
				
				vai.getJTextArea().setText(output1);
			
			
             if(aux>=1){
              try{
            	vai.getJTextField().setText("Há pelo menos " + aux/2 + " arquivos presos na fila de impressão");
                vai.getJButton1().setEnabled(true);
                vai.getJMenuItem1().setEnabled(true);
              }catch (NullPointerException err){
             	 System.out.println(""+err);
              } 
                
             }
             else if(aux==0){
               try{	 
             	vai.getJTextField().setText("Não há arquivos presos na fila de impressão");
             	vai.getJButton1().setEnabled(false);
             	vai.getJMenuItem1().setEnabled(false);
              }catch (NullPointerException err){
             	 System.out.println(""+err);
              } 	
             }
			
		}
	}

Mas o resultado não foi esperado, ele teria que limpar o TextArea porque ele não encontraria nenhum arquivo e o aux seria 0, então ele teria que imprimir “Não há arquivos presos na fila de impressão” no TextField depois desabilitar o Botão e o MenuItem. Nenhuma destas condições aconteceu.

O estranho é que se eu chamar o método atualize do método main, funciona corretamente, mas se eu chamar de outra classe não funciona.

Tem como dizer o que foi que aconteceu? sabe o valor que fico o Aux?
tenta executar teu programa em modo debug (tanto eclipse quanto netbeans tem essa opção), coloque um breakpoint no inciio desse teu método e acompanhe passo a passo.

ah olhei agora seu código e vi que você ta pegando o textfield invez do textarea é isso mesmo que tu quer fazer?

você ta usando…

                vai.getJTextField().setText("Não há arquivos presos na fila de impressão");  

não seria isso?

vai.getJTextArea().setText("Não há arquivos presos na fila de impressão");  

Está correto, o aux=0 e carrega no textfield vai.getJTextField().setText(“Não há arquivos presos na fila de impressão”);

O JTextArea é apenas pra exibir os arquivos presos na fila de impressão, já que não há arquivos na fila, tem que aparecer no JTextArea apenas “Arquivos:”, mas não acontece nada.

Exatamente o que eu tinha dito para ele fazer desde o início…

Aliás, sempre que recair numa exceção desse tipo:

  1. Procure se alguma variável que possa não ter sido inicializada na linha indicada, e está sendo usada;
  2. Não encontrou? Rode o debugger.

Problema do Ponteiro para nulo java.lang.NullPointerException é insolucionavel?
Tô usando o Eclipse com Mysql.

e tá com seguintes erros do java.lang.NullPointerException:

03/12/2009 09:18:41 org.apache.catalina.core.AprLifecycleListener init INFO: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: C:\Arquivos de programas\Java\jre6\bin;.;C:\WINDOWS\Sun\Java\bin;C:\WINDOWS\system32;C:\WINDOWS;C:/Arquivos de programas/Java/jre6/bin/client;C:/Arquivos de programas/Java/jre6/bin;C:\orant\bin;C:\oracle\product0.1.0\Client_1\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;c:\Arquivos de programas\Microsoft SQL Server0\Tools\binn\;C:\ARQUIV~1\Borland\Delphi6\Bin;C:\ARQUIV~1\Borland\Delphi6\Projects\Bpl;C:\Arquivos de programas\Java\jdk1.6.0_17\bin 03/12/2009 09:18:42 org.apache.coyote.http11.Http11Protocol init INFO: Initializing Coyote HTTP/1.1 on http-8080 03/12/2009 09:18:42 org.apache.catalina.startup.Catalina load INFO: Initialization processed in 2306 ms 03/12/2009 09:18:42 org.apache.catalina.core.StandardService start INFO: Starting service Catalina 03/12/2009 09:18:42 org.apache.catalina.core.StandardEngine start INFO: Starting Servlet Engine: Apache Tomcat/6.0.20 log4j:WARN No appenders could be found for logger (org.displaytag.filter.ResponseOverrideFilter). log4j:WARN Please initialize the log4j system properly. 03/12/2009 09:18:45 org.apache.coyote.http11.Http11Protocol start INFO: Starting Coyote HTTP/1.1 on http-8080 03/12/2009 09:18:46 org.apache.jk.common.ChannelSocket init INFO: JK: ajp13 listening on /0.0.0.0:8009 03/12/2009 09:18:46 org.apache.jk.server.JkMain start INFO: Jk running ID=0 time=0/312 config=null 03/12/2009 09:18:46 org.apache.catalina.startup.Catalina start INFO: Server startup in 4136 ms Erro: java.lang.NullPointerExceptionThu Dec 03 09:18:53 GMT-03:00 2009 java.lang.NullPointerException at java.io.FileInputStream.<init>(Unknown Source) at java.io.FileInputStream.<init>(Unknown Source) at br.com.maximaging.maxflow.dao.ClassConfiguracoes.<init>(ClassConfiguracoes.java:44) at br.com.maximaging.maxflow.dao.ClassConexao.<init>(ClassConexao.java:25) at br.com.maximaging.maxflow.dao.UsuarioDAO.validarUsuario(UsuarioDAO.java:942) at br.com.maximaging.maxflow.facade.UsuarioFacade.validar(UsuarioFacade.java:210) at br.com.maximaging.maxflow.web.actions.LoginAction.validarUsuario(LoginAction.java:116) at br.com.maximaging.maxflow.web.actions.LoginAction.execute(LoginAction.java:53) at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:419) at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:224) at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1194) at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432) at javax.servlet.http.HttpServlet.service(HttpServlet.java:637) at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.displaytag.filter.ResponseOverrideFilter.doFilter(ResponseOverrideFilter.java:125) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:849) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583) at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:454) at java.lang.Thread.run(Unknown Source) erro conex java.lang.NullPointerExceptionThu Dec 03 09:18:53 GMT-03:00 2009 java.lang.NullPointerException at br.com.maximaging.maxflow.dao.ClassConfiguracoes.getTag(ClassConfiguracoes.java:65) at br.com.maximaging.maxflow.dao.ClassConexao.<init>(ClassConexao.java:26) at br.com.maximaging.maxflow.dao.UsuarioDAO.validarUsuario(UsuarioDAO.java:942) at br.com.maximaging.maxflow.facade.UsuarioFacade.validar(UsuarioFacade.java:210) at br.com.maximaging.maxflow.web.actions.LoginAction.validarUsuario(LoginAction.java:116) at br.com.maximaging.maxflow.web.actions.LoginAction.execute(LoginAction.java:53) at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:419) at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:224) at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1194) at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432) at javax.servlet.http.HttpServlet.service(HttpServlet.java:637) at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.displaytag.filter.ResponseOverrideFilter.doFilter(ResponseOverrideFilter.java:125) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:849) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583) at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:454) at java.lang.Thread.run(Unknown Source) java.lang.NullPointerException at br.com.maximaging.maxflow.dao.ClassBanco.setSql(ClassBanco.java:265) at br.com.maximaging.maxflow.dao.UsuarioDAO.validarUsuario(UsuarioDAO.java:955) at br.com.maximaging.maxflow.facade.UsuarioFacade.validar(UsuarioFacade.java:210) at br.com.maximaging.maxflow.web.actions.LoginAction.validarUsuario(LoginAction.java:116) at br.com.maximaging.maxflow.web.actions.LoginAction.execute(LoginAction.java:53) at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:419) at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:224) at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1194) at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432) at javax.servlet.http.HttpServlet.service(HttpServlet.java:637) at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.displaytag.filter.ResponseOverrideFilter.doFilter(ResponseOverrideFilter.java:125) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:849) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583) at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:454) at java.lang.Thread.run(Unknown Source)

Já estou procurando a solução a semanas e não encontro. Alguém poderia me dizer qual é o problema???

Você sabe ler essa linguiça aí que você postou?
O que na classe ClassConfiguracoes.java, linha 44? O código estará no construtor da classe.
Ponha um breakpoint nessa linha, e veja o que está nulo.

descupe pela linguiça,
sou iniciante java,
tou tentando desenrolar essa linguiça,
já olhei em diversos forums mas não encontrei o problema,
o que é um breakpoint mesmo?
não to conseguindo resolver ha um tempo.

Há o erro é assim mesmo
são três vezes o java.lang.NullPointerException
vi em outras postagem que esse erro é de ponteiro para nulo,
mais não entendo como que as bibliotecas apontam pra nulo,
Esse sistema tem login e senha,
pensei que fosse so conectar com o banco, mas conectei,
mais o erro continuou.

Erro: java.io.FileNotFoundException: C:Arquivos de programasApache Software FoundationTomcat 6.0webappsS006.V3.01.AMCWebContentWEB-INFWebConfig.xml (O sistema não pode encontrar o arquivo especificado)Thu Dec 03 12:26:01 GMT-03:00 2009 java.io.FileNotFoundException: C:Arquivos de programasApache Software FoundationTomcat 6.0webappsS006.V3.01.AMCWebContentWEB-INFWebConfig.xml (O sistema não pode encontrar o arquivo especificado) at java.io.FileInputStream.open(Native Method) at java.io.FileInputStream.<init>(Unknown Source) at java.io.FileInputStream.<init>(Unknown Source) at br.com.maximaging.maxflow.dao.ClassConfiguracoes.<init>(ClassConfiguracoes.java:44) at br.com.maximaging.maxflow.dao.ClassConexao.<init>(ClassConexao.java:25) at br.com.maximaging.maxflow.dao.UsuarioDAO.validarUsuario(UsuarioDAO.java:942) at br.com.maximaging.maxflow.facade.UsuarioFacade.validar(UsuarioFacade.java:210) at br.com.maximaging.maxflow.web.actions.LoginAction.validarUsuario(LoginAction.java:116) at br.com.maximaging.maxflow.web.actions.LoginAction.execute(LoginAction.java:53) at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:419) at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:224) at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1194) at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432) at javax.servlet.http.HttpServlet.service(HttpServlet.java:637) at javax.servlet.http.HttpServlet.service(HttpServlet.java:717) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.displaytag.filter.ResponseOverrideFilter.doFilter(ResponseOverrideFilter.java:125) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:849) at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583) at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:454) at java.lang.Thread.run(Unknown Source)

O último erro está na classe br.com.maximaging.maxflow.dao.ClassConfiguracoes, dentro do construtor, na linha 44 (consegue interpretar o stacktrace?).

Você está criando um FileInputStream porém o nome dos arquivos simplesmente está sem barras! Deveria ser: “C:\Arquivos de programas…” ou “C:/Arquivos de Programas/…”.

Poste essa parte do código para vermos.

Exatamente marcobiscaro2112 era isso mesmo.
quebrei a cabeça o dia inteiro no trabalho, mais no finalzinho do tempo po volta das 12:40 descobri era isso mesmo. graças a Deus! ufa! passei sufoco e era uma besteirinha de nada.

no arquivo que esta na WEB-INF tinha um arquivo chamado parameteralgumacoisa.proprietir
era exatamente isso tinha invertido a barra.

era mais ou menos assim:
errado -> objeto… = C:\Arquivos de programas\apache\tomcat…
correto -> objeto… = C:/Arquivos de programas/apache/Tomcat/webapps/projeto/WEB-INF/ parameteralgumacoisa.proprietir…

pensei que era conexão com o banco MYSQL

crie uma CLASSPATH = C:/arquivo de programa/apache/lib/mysql.x.x.x…x.jar no ambiente do sistema que foi essencial pra conexão.

além disso tinha que colocar o ip aonde tava o banco ao inves de localhost e o database certo.

o java.lang.NullPointerException significa que tava setando o no arquivo xxx.proprietir que tava no WEB-INF, também tinha que setar pros aruivos no tomcat no webapps, tava setando um caminho pra nulo, setando pra nenhum canto, por causa da barra que tem sua pecularidade.

tinha o projeto no eclipse e no webapps do TOMCAT.

Só sei que tava literalmente descascando o abacaxi!

Mais deu tudo certo. Graças a Deus.
mesmo assim valeu kra!

xatamente marcobiscaro2112 era isso mesmo.
quebrei a cabeça o dia inteiro no trabalho, mais no finalzinho do tempo po volta das 12:40 descobri era isso mesmo. graças a Deus! ufa! passei sufoco e era uma besteirinha de nada.

no arquivo que esta na WEB-INF tinha um arquivo chamado parameteralgumacoisa.proprietir
era exatamente isso tinha invertido a barra.

era mais ou menos assim:
errado -> objeto… = C:\Arquivos de programas\apache\tomcat…
correto -> objeto… = C:/Arquivos de programas/apache/Tomcat/webapps/projeto/WEB-INF/ parameteralgumacoisa.proprietir…

pensei que era conexão com o banco MYSQL

crie uma CLASSPATH = C:/arquivo de programa/apache/lib/mysql.x.x.x…x.jar no ambiente do sistema que foi essencial pra conexão.

além disso tinha que colocar o ip aonde tava o banco ao inves de localhost e o database certo.

o java.lang.NullPointerException significa que tava setando o no arquivo xxx.proprietir que tava no WEB-INF, também tinha que setar pros aruivos no tomcat no webapps, tava setando um caminho pra nulo, setando pra nenhum canto, por causa da barra que tem sua pecularidade.

tinha o projeto no eclipse e no webapps do TOMCAT.

Só sei que tava literalmente descascando o abacaxi!

Mais deu tudo certo. Graças a Deus.
mesmo assim valeu kra!

Acho que enviei duas vezes, antes de mais nada vai descupando os trantornos.
sou iniciante aqui.