<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
	<channel>
		<title><![CDATA[PortalJava - Tópicos mais recentes do Fórum]]></title>
		<link>http://www.portaljava.com/forum/recentTopics/list.page</link>
		<description><![CDATA[As mais recentes discussões em todo o sistema]]></description>
		<generator>JForum - http://www.jforum.net</generator>
			<item>
				<title>Encriptar ficheiro</title>
				<description><![CDATA[ Boas pessoal,<br /> Esta é a classe que tem os metodos de encriptação e desencriptação que eu apanhei no google em java almanac em [url]http://www.exampledepot.com/egs/javax.crypto/DesFile.html[/url]<br /> [code]<br />     public class DesEncrypter {<br />         Cipher ecipher;<br />         Cipher dcipher;<br />     <br />         DesEncrypter(SecretKey key) {<br />             // Create an 8-byte initialization vector<br />             byte[] iv = new byte[]{<br />                 (byte)0x8E, 0x12, 0x39, (byte)0x9C,<br />                 0x07, 0x72, 0x6F, 0x5A<br />             };<br />             AlgorithmParameterSpec paramSpec = new IvParameterSpec(iv);<br />             try {<br />                 ecipher = Cipher.getInstance(&quot;DES/CBC/PKCS5Padding&quot;);<br />                 dcipher = Cipher.getInstance(&quot;DES/CBC/PKCS5Padding&quot;);<br />     <br />                 // CBC requires an initialization vector<br />                 ecipher.init(Cipher.ENCRYPT_MODE, key, paramSpec);<br />                 dcipher.init(Cipher.DECRYPT_MODE, key, paramSpec);<br />             } catch (java.security.InvalidAlgorithmParameterException e) {<br />             } catch (javax.crypto.NoSuchPaddingException e) {<br />             } catch (java.security.NoSuchAlgorithmException e) {<br />             } catch (java.security.InvalidKeyException e) {<br />             }<br />         }<br />     <br />         // Buffer used to transport the bytes from one stream to another<br />         byte[] buf = new byte[1024];<br />     <br />         public void encrypt(InputStream in, OutputStream out) {<br />             try {<br />                 // Bytes written to out will be encrypted<br />                 out = new CipherOutputStream(out, ecipher);<br />     <br />                 // Read in the cleartext bytes and write to out to encrypt<br />                 int numRead = 0;<br />                 while ((numRead = in.read(buf)) &gt;= 0) {<br />                     out.write(buf, 0, numRead);<br />                 }<br />                 out.close();<br />             } catch (java.io.IOException e) {<br />             }<br />         }<br />     <br />         public void decrypt(InputStream in, OutputStream out) {<br />             try {<br />                 // Bytes read from in will be decrypted<br />                 in = new CipherInputStream(in, dcipher);<br />     <br />                 // Read in the decrypted bytes and write the cleartext to out<br />                 int numRead = 0;<br />                 while ((numRead = in.read(buf)) &gt;= 0) {<br />                     out.write(buf, 0, numRead);<br />                 }<br />                 out.close();<br />             } catch (java.io.IOException e) {<br />             }<br />         }<br />     }<br /> [/code]<br /> <br /> <br /> eu criei uma classe que tem um metodo que chama a class acima e usa o metodo encript da seguinte forma : <br /> [code]<br />    try {<br /> <br />                       key = KeyGenerator.getInstance(&quot;DES&quot;).generateKey();<br />                       <br />                       System.out.println(key);<br /> <br />                       // Create encrypter/decrypter class<br />                       DesEncrypter encrypter = new DesEncrypter(key);<br /> <br />                       // Encrypt<br />                       String nfile = new String (lemails.getSelectedValue().toString().trim());<br />                       encrypter.encrypt(new FileInputStream(&quot;processados/&quot;+nfile),<br />                       new FileOutputStream(&quot;processados/&quot;+ nfile+&quot;_&quot;+key));<br /> <br />                       // Decrypt<br />                       /*<br />                       encrypter.decrypt(new FileInputStream(&quot;ciphertext&quot;),<br />                               new FileOutputStream(&quot;cleartext2&quot;));<br />                      */ <br />                       <br />                   } catch (Exception e) {<br />                       e.printStackTrace();<br />                   }<br /> [/code]<br /> <br /> tudo funciona beleza .<br /> <br /> O problema está em desencriptar este ficheiro encriptado. Quando tento usar o metodo decrypt  ele criar um novo ficheiro mas ainda encriptado .<br /> [code]<br /> ~try {<br />                        <br />                        <br />                    SecretKey key = KeyGenerator.getInstance(&quot;DES&quot;).generateKey();  <br />                    <br />                    <br />                    System.out.println(key);<br /> <br />                       DesEncrypter encrypter = new DesEncrypter(key);<br /> <br />                       String nfile = new String (lemails.getSelectedValue().toString().trim());<br />   <br />                       // Decrypt<br />                     <br />                       encrypter.decrypt(new FileInputStream(&quot;processados/&quot;+nfile),<br />                               new FileOutputStream(&quot;processados/cleartext2.txt&quot;));     <br />                     <br />                 }catch(Exception ex){                  <br />                     ex.printStackTrace();<br />                     <br />                 }<br /> [/code]<br /> <br /> minha duvida é :<br /> <br /> Como faço para poder desencriptar este ficheiro ]]></description>
				<guid isPermaLink="true">http://www.portaljava.com/forum/posts/preList/45227/166174.page</guid>
				<link>http://www.portaljava.com/forum/posts/preList/45227/166174.page</link>
				<pubDate><![CDATA[Thu, 20 Nov 2008 14:19:17]]> GMT</pubDate>
				<author><![CDATA[ LuisClaudio]]></author>
			</item>
			<item>
				<title>Iniciando em programação web. Onde hospedar um site?</title>
				<description><![CDATA[ Oi,<br /> <br /> Estou iniciando no desenvolvimento web e gostaria de saber como e onde eu posso hospedar um site?<br /> <br /> Obrigado. ]]></description>
				<guid isPermaLink="true">http://www.portaljava.com/forum/posts/preList/45226/166168.page</guid>
				<link>http://www.portaljava.com/forum/posts/preList/45226/166168.page</link>
				<pubDate><![CDATA[Thu, 20 Nov 2008 13:40:43]]> GMT</pubDate>
				<author><![CDATA[ rsajava]]></author>
			</item>
			<item>
				<title>Assistente animado (Tipo do Office)</title>
				<description><![CDATA[ Olá galera, boa tarde.<br /> <br /> Alguém conhece ou já viu algum tipo de assitente animado, parecido com o do office, para utilizar com java/Swing?<br /> <br /> Gostaria de introduzir em minha aplicação, um assistente animado, parecido com o do office. Ele informaria dicas e ajudas referente as funcionalidades do sistema.<br /> <br /> <br /> Obrigado.]]></description>
				<guid isPermaLink="true">http://www.portaljava.com/forum/posts/preList/45225/166166.page</guid>
				<link>http://www.portaljava.com/forum/posts/preList/45225/166166.page</link>
				<pubDate><![CDATA[Thu, 20 Nov 2008 13:32:54]]> GMT</pubDate>
				<author><![CDATA[ diogoroedel]]></author>
			</item>
			<item>
				<title>Dúvida em swing </title>
				<description><![CDATA[ Olá<br /> Estou desenvolvendo uma janela (jpanel) com vários jtextfield<br /> Estou com 2 dúvidas<br /> <br /> - como setar um determinado jtextfield como o 1º campo ao abrir o jpanel ?<br /> - ao teclar TAB, como executar uma busca no select, consegui fazer para o ENTER, para o TAB não<br /> <br /> Obrigado<br /> <br /> Marcos Fabrício<br /> ]]></description>
				<guid isPermaLink="true">http://www.portaljava.com/forum/posts/preList/45224/166164.page</guid>
				<link>http://www.portaljava.com/forum/posts/preList/45224/166164.page</link>
				<pubDate><![CDATA[Wed, 19 Nov 2008 16:28:31]]> GMT</pubDate>
				<author><![CDATA[ marcoscorso]]></author>
			</item>
			<item>
				<title>Gerar Relatorios</title>
				<description><![CDATA[ Olá pessoal!!!<br /> Preciso de uma grande ajuda!!<br /> Sou iniciante em desenvolvimento de softwares...estamos aprendendo agora a salvar os dados em banco...<br /> Estamos desenvolvendo um programa e gostaríamos de gerar relatorios...tipo fazer um get no campo e passar a informação para uma página, um arquivo pdf....<br /> Alguem tem alguma dica de primeiros passos e tal...ouvi falar do iReport, mas não entendi como funciona..se vcs tiverem alguma ferramenta pra sugerir...fico grata!!<br /> Até Vlw!!!]]></description>
				<guid isPermaLink="true">http://www.portaljava.com/forum/posts/preList/45223/166163.page</guid>
				<link>http://www.portaljava.com/forum/posts/preList/45223/166163.page</link>
				<pubDate><![CDATA[Wed, 19 Nov 2008 15:13:25]]> GMT</pubDate>
				<author><![CDATA[ scheila giongo]]></author>
			</item>
			<item>
				<title>Metodo para ler arquivo</title>
				<description><![CDATA[ Fiz um método que escreve em um arquivo sequencial, mas nao estou conseguindo fazer um que busque por um nome de registro. <br /> Lembrando que este arquivo trabalha da seguinte maneira: <br /> Ele pega a data de nascimento % 23, e o resultado entao será a posicao em que gravara o arquivo. Caso algum data coinscida com o resultado que ja tenha um registro, ele passa para o outro bloco (de 23) e grava o registro<br /> Abaixo uns métodos importantes do sistema. O método pesquisarRegistro() está somente o esqueleto, se alguem conseguir me dar um ajuda.<br /> <br /> ContatoRecord.java<br /> [code]<br />         /**<br /> 	 * Retornar o tamanho fixo do registro<br /> 	 * Cada caracter de uma String ocupa 02 bytes<br /> 	 * 60 bytes do nome<br /> 	 * 60 bytes do endereco<br /> 	 * 20 bytes da data de nascimento 99/99/9999<br /> 	 * 26 bytes do telefone (99)9999-9999<br /> 	 * <br /> 	 * @return tamanho do registro<br /> 	 */<br /> 	public static int size()<br /> 	{<br /> 		return 166;<br /> 	}<br /> <br />         public void read(RandomAccessFile file) throws IOException<br /> 	{<br /> 		// Ler o nome do contato<br /> 		setNome(readString(30, file));<br /> 		<br /> 		// Ler o endereco do contato<br /> 		setEndereco(readString(30, file));<br /> 		<br /> 		// Ler a data de nascimento do contato<br /> 		setNascimento(readString(10, file));<br /> 		<br /> 		// Ler o telefone do contato<br /> 		setTelefone(readString(13, file));<br /> <br /> 	}<br /> <br />         private String readString(int tamanho, RandomAccessFile file) throws IOException<br /> 	{<br /> 		// Palavra a ser lida<br /> 		char palavra[] = new char[tamanho];<br /> 		<br /> 		// Caracter lido do arquivo<br /> 		char temp;<br /> 		<br /> 		// Ler 30 caracteres<br /> 		for(int count = 0; count &lt; palavra.length; count++)<br /> 		{<br /> 			// Ler um caracter do arquivo<br /> 			temp = file.readChar();<br /> 			<br /> 			// Concatenar com os caracteres lidos anteriormente<br /> 			palavra[count] = temp;<br /> 		}<br /> <br /> 		// Retornar a palavra lida<br /> 		return new String(palavra).replace('\0', ' ');<br /> 	}<br /> <br />         public void write(RandomAccessFile file) throws IOException<br /> 	{<br /> 		// Gravar o nome do contato<br /> 		writeString(file, getNome(), 30);<br /> 		<br /> 		// Gravar o endereco do contato<br /> 		writeString(file, getEndereco(), 30);<br /> 		<br /> 		// Gravar a data de nascimento do contato<br /> 		writeString(file, getNascimento(), 10);<br /> 		<br /> 		// Gravar o telefone do contato<br /> 		writeString(file, getTelefone(), 13);<br /> 	}<br /> <br />         private void writeString(RandomAccessFile file, String palavra, int tamanho) throws IOException<br /> 	{<br /> 		// Buffer a ser gravado<br /> 		StringBuffer buffer = null;<br /> 		<br /> 		// Setar o valor do buffer<br /> 		if(palavra != null)<br /> 		{<br /> 			buffer = new StringBuffer(palavra);<br /> 		}<br /> 		else<br /> 		{<br /> 			buffer = new StringBuffer(tamanho);<br /> 		}<br /> 		<br /> 		// Padronizar o tamanho da palavra<br /> 		buffer.setLength(tamanho);<br /> 		<br /> 		// Gravar a palavra no arquivo<br /> 		file.writeChars(buffer.toString());<br /> <br /> 	}<br /> [/code]<br /> <br /> ContatoView.java<br /> [code]<br />           private void inserirRegistro() {<br /> 		<br /> 		// Verificar se os campos foram preenchidos<br /> 		if ((this.tfNome.getText() == null)<br /> 				|| (this.tfNome.getText().equals(&quot;&quot;))) {<br /> 			JOptionPane.showMessageDialog(this, &quot;Nome não foi preenchido!&quot;,<br /> 					&quot;Erro&quot;, JOptionPane.ERROR_MESSAGE);<br /> 			return;<br /> 		}<br /> 		if ((this.tfEndereco.getText() == null)<br /> 				|| (this.tfEndereco.getText().equals(&quot;&quot;))) {<br /> 			JOptionPane.showMessageDialog(this, &quot;Endereço não foi preenchido!&quot;,<br /> 					&quot;Erro&quot;, JOptionPane.ERROR_MESSAGE);<br /> 			return;<br /> 		}<br /> 			/*<br /> 			 * else if<br /> 			 * (searchRecord(Integer.parseInt(this.tfMatricula.getText()))){<br /> 			 * JOptionPane.showMessageDialog(this, &quot;Matrícula já cadastrada!&quot;,<br /> 			 * &quot;Erro&quot;, JOptionPane.ERROR_MESSAGE); return; }<br /> 			 */<br /> 		if ((this.tfNascimento.getText() == null)<br /> 				|| (this.tfNascimento.getText().equals(&quot;&quot;))) {<br /> 			JOptionPane.showMessageDialog(this,<br /> 					&quot;Data de Nascimento não foi preenchida!&quot;, &quot;Erro&quot;,<br /> 					JOptionPane.ERROR_MESSAGE);<br /> 			return;<br /> 		} else if(!Data.validaData(this.tfNascimento.getText())){<br /> 			JOptionPane.showMessageDialog(this,<br /> 					&quot;Data de Nascimento inválida!&quot;, &quot;Erro&quot;,<br /> 					JOptionPane.ERROR_MESSAGE);<br /> 			return;<br /> 		}<br /> <br /> 		// Abrir o arquivo<br /> 		try {<br /> 			this.arquivo = new RandomAccessFile(new File(fileName.getName()), &quot;rw&quot;);<br /> 		} catch(FileNotFoundException exception){<br /> 			JOptionPane<br /> 			.showMessageDialog(<br /> 					this,<br /> 					&quot;Não foi possível abrir o arquivo solicitado!&quot;,<br /> 					&quot;Erro&quot;, JOptionPane.ERROR_MESSAGE);<br /> 			return;<br /> 		}<br /> 		<br /> 		// Salvar os registros no arquivo<br /> 		try {<br /> 			<br /> 			// Obter a quantidade de registros da base de dados<br /> 			int quantidadeRegistros = (int) (this.arquivo.length() / ContatoRecord.size());<br /> 			<br /> 			// Obtendo o dia, mes e ano da data de nascimento para gerar a chave<br /> 			String dia = this.tfNascimento.getText().substring(0, 2);<br /> 			String mes = this.tfNascimento.getText().substring(3, 5);<br /> 			String ano = this.tfNascimento.getText().substring(6, 10);<br /> 			<br /> 			// Obter a chave para calcular o hash<br /> 			int chave = Integer.parseInt(dia + mes + ano);<br /> 			<br /> 			// Obter a posicao onde o registro deverá ser salvo<br /> 			int posicaoHash = chave % 23;<br /> 			<br /> 			// Posicionar o pointer do registro no inicio do arquivo<br /> 			this.arquivo.seek(0);<br /> 				<br /> 			// Indicador de que a posicao de inserção foi encontrada<br /> 			boolean procurandoPosicao = true;<br /> 			<br /> 			// Encontrar uma posicao para a insercao do registro<br /> 			for(int bloco = 0; procurandoPosicao; bloco++)<br /> 			{<br /> 				// Posicao a ser analisada<br /> 				int posicaoAnalisada = posicaoHash + (bloco * 23);<br /> 				<br /> 				// Verificar se a posicao analisada é suportada pelo arquivo<br /> 				if(posicaoAnalisada &lt; quantidadeRegistros)<br /> 				{<br /> 					// Posicionar o pointer sobre o registro Hash do bloco atual<br /> 					this.arquivo.seek(posicaoAnalisada * ContatoRecord.size());<br /> 					<br /> 					// Ler o registro corrente<br /> 					String valorCorrente = this.arquivo.readUTF();<br /> 					<br /> 					// Verificar se a posicao esta vaga<br /> 					if((valorCorrente.equals(&quot;0&quot;) ||(valorCorrente.equals(tfNome.getText()))))<br /> 					{<br /> 						// Voltar a posicao lida<br /> 						this.arquivo.seek(posicaoAnalisada * ContatoRecord.size());<br /> 						<br /> 						// Sair do loop de procura<br /> 						procurandoPosicao = false;<br /> 					}<br /> 				}<br /> 				else<br /> 				{<br /> 					// Posicionar o cursor no final do arquivo<br /> 					this.arquivo.seek(this.arquivo.length());<br /> 					<br /> 					// Adicionar registro nulos até a posicao analisada<br /> 					for(int count = quantidadeRegistros; count &lt; posicaoAnalisada; count++)<br /> 					{<br /> 						// Escrever um registro nulo na base de dados<br /> 						this.arquivo.writeInt(0);<br /> 					}<br /> 					<br /> 					// Sair do loop de procura<br /> 					procurandoPosicao = false;<br /> 				}<br /> 			}<br /> 			<br /> 			// Escrever o registro na posicao indicada<br /> 			ContatoRecord newRecord = new ContatoRecord(this.tfNome.getText(),<br /> 					this.tfEndereco.getText(), this.tfNascimento.getText(), <br /> 					this.tfTelefone.getText());<br /> 			// Gravar o aluno na base de dados<br /> 			newRecord.write(this.arquivo);<br /> 			<br /> 		} catch (IOException exception) {<br /> 			JOptionPane.showMessageDialog(this,<br /> 					&quot;Não foi possível salvar o registro no arquivo!&quot;, &quot;Erro&quot;,<br /> 					JOptionPane.ERROR_MESSAGE);<br /> 			return;<br /> 		}<br /> <br /> 		// Limpar o formulario e avisar o usuario de que o registro foi salvo<br /> 		// com sucesso<br /> 		this.tfNome.setText(&quot;&quot;);<br /> 		this.tfEndereco.setText(&quot;&quot;);<br /> 		this.tfNascimento.setText(&quot;&quot;);<br /> 		this.tfTelefone.setText(&quot;&quot;);<br /> 		JOptionPane.showMessageDialog(this, &quot;Registro salvo com sucesso!&quot;,<br /> 				&quot;Informação&quot;, JOptionPane.INFORMATION_MESSAGE);<br /> <br /> 		// Fechar o arquivo<br /> 		try {<br /> 			this.arquivo.close();<br /> 		} catch (IOException exception) {<br /> 			JOptionPane<br /> 					.showMessageDialog(<br /> 							this,<br /> 							&quot;Não foi possível fechar o arquivo após salvar o registro!&quot;,<br /> 							&quot;Erro&quot;, JOptionPane.ERROR_MESSAGE);<br /> 			return;<br /> 		}<br /> 	}<br /> [/code]<br /> <br /> [code]<br />         /**<br /> 	 * Metodo responsavel pela busca dos registros na base de dados<br /> 	 */<br /> 	private void pesquisarRegistro() {<br /> 		// Perguntar o nome do contato desejado<br /> 		String resultado = JOptionPane.showInputDialog(this, &quot;Nome&quot;,<br /> 				&quot;Pesquisar&quot;, JOptionPane.QUESTION_MESSAGE);<br /> <br /> 		// Verificar se o usuario forneceu algum nome de contato<br /> 		if ((resultado == null) || (resultado.equals(&quot;&quot;))) {<br /> 			return;<br /> 		} else {<br /> 			<br /> 			// Abrir o arquivo<br /> 			try {<br /> 				this.arquivo = new RandomAccessFile(new File(fileName.getName()), &quot;rw&quot;);<br /> 			} catch(FileNotFoundException exception){<br /> 				JOptionPane<br /> 				.showMessageDialog(<br /> 						this,<br /> 						&quot;Não foi possível abrir o arquivo solicitado!&quot;,<br /> 						&quot;Erro&quot;, JOptionPane.ERROR_MESSAGE);<br /> 				return;<br /> 			}<br /> 			<br /> 			boolean encontrou = false;<br /> 			<br /> 			try {<br /> 			<br /> 				// Obter a quantidade de registros da base de dados<br /> 				int quantidadeRegistros = (int) (this.arquivo.length() / ContatoRecord.size());<br /> 				<br /> 				// Obter a posicao onde o registro deverá ser lido<br />                                 // Aqui eu teria que pelo nome saber qual a data de nascimento para calcular a posicao do registro<br /> 				int posicaoHash = ????? % 23;<br /> 				<br /> 				// Posicionar o pointer do registro no inicio do arquivo<br /> 				this.arquivo.seek(0);<br /> <br /> 				// Pesquisar em todos os blocos do arquivo<br /> 				for(int bloco = 0; true; bloco++)<br /> 				{<br /> 					// Posicao a ser analisada<br /> 					int posicaoAnalisada = posicaoHash + (bloco * 23);<br /> <br /> 					// Verificar se a posicao analisada é suportada pelo arquivo<br /> 					if(posicaoAnalisada &lt; quantidadeRegistros)<br /> 					{<br /> 						// Posicionar o pointer sobre o registro Hash do bloco atual<br /> 						this.arquivo.seek(posicaoAnalisada * ContatoRecord.size());<br /> 						<br />                                                 // Aqui eu teria que buscar os nomes e guardar em nomeCorrente para comparar com o resultado<br /> 						String nomeCorrente = &quot;&quot;;<br /> 						<br /> 						// Verificar se o registro foi encontrado<br /> 						if(nomeCorrente.equals(resultado))<br /> 						{<br /> 							encontrou = true;<br /> 							break;<br /> 						}<br /> 					}<br /> 				}<br /> 			} catch(Exception exception){<br /> 				// Fim da leitura de dados<br /> 				exception.printStackTrace();<br /> 				return;<br /> 			}<br /> 			<br /> 			// Limpar o formulario e avisar o usuario de que o registro foi salvo com sucesso<br /> 			this.tfNome.setText(&quot;&quot;);<br /> 			if(encontrou)<br /> 			{<br /> 				JOptionPane.showMessageDialog(this, &quot;Registro localizado!&quot;, &quot;Informação&quot;, JOptionPane.INFORMATION_MESSAGE);<br /> 			}<br /> 			else<br /> 			{<br /> 				JOptionPane.showMessageDialog(this, &quot;Registro não localizado!&quot;, &quot;Erro&quot;, JOptionPane.ERROR_MESSAGE);<br /> 			}<br /> 			<br /> 			// Fechar o arquivo<br /> 			try<br /> 			{<br /> 				this.arquivo.close();<br /> 			}<br /> 			catch(IOException exception)<br /> 			{<br /> 				JOptionPane.showMessageDialog(this, &quot;Não foi possível fechar o arquivo após pesquisar os registros!&quot;, &quot;Erro&quot;, JOptionPane.ERROR_MESSAGE);<br /> 				return;<br /> 			}<br /> 			<br /> 		}<br /> <br /> 	}<br /> [/code]]]></description>
				<guid isPermaLink="true">http://www.portaljava.com/forum/posts/preList/45222/166162.page</guid>
				<link>http://www.portaljava.com/forum/posts/preList/45222/166162.page</link>
				<pubDate><![CDATA[Wed, 19 Nov 2008 13:13:09]]> GMT</pubDate>
				<author><![CDATA[ laurinha2004]]></author>
			</item>
			<item>
				<title>Aplicação J2ME para consultas no Oracle? é possivel?</title>
				<description><![CDATA[ Salve galera. Preciso desenvolver uma aplicação em J2ME que faça uma consulta em um banco de dados Oracle porém estou super perdido... não tenho experiência em J2ME, estou começando agora mais ainda não consegui chegar a uma conclusão.<br /> <br /> Seria o seguinte: Preciso desenvolver em J2ME uma interface simples que faça uma consulta em uma tabela no Oracle. Eu consigo fazer isso comunicando a aplicação J2ME direto  com o Oracle???<br /> <br /> Ou preciso de servlet ou alguma coisa de jsp para fazer essa comunicação??? <br /> Vou rodar ela somente no Emulator, então não preciso de uma aplicação real... <br /> <br /> Bom, gostaria de dicas...<br /> <br /> Valew...]]></description>
				<guid isPermaLink="true">http://www.portaljava.com/forum/posts/preList/45221/166161.page</guid>
				<link>http://www.portaljava.com/forum/posts/preList/45221/166161.page</link>
				<pubDate><![CDATA[Tue, 18 Nov 2008 17:11:11]]> GMT</pubDate>
				<author><![CDATA[ _zero_call_]]></author>
			</item>
			<item>
				<title>datefield actionlistener </title>
				<description><![CDATA[ olá<br /> coloquei um action listener no componente datefield do nachocalendar, mas não funciona<br /> por exemplo, quando o focus está no campo e eu tecle F2, ele faz um select no postgres<br /> o select está certo, se eu coloco num textfield funciona normalmente<br /> em qualquer outro componente, textfield, jformatted, funciona<br /> o que pode ser ??<br /> obrigado<br /> ]]></description>
				<guid isPermaLink="true">http://www.portaljava.com/forum/posts/preList/45220/166151.page</guid>
				<link>http://www.portaljava.com/forum/posts/preList/45220/166151.page</link>
				<pubDate><![CDATA[Tue, 18 Nov 2008 08:54:34]]> GMT</pubDate>
				<author><![CDATA[ marcoscorso]]></author>
			</item>
			<item>
				<title>JARs necessários para o funcionamento do Hibernate</title>
				<description><![CDATA[ Ae galera alguem poderia me falar quais os jar que vem junto com o hibernate (pasta lib), que eu realmente preciso colocar no classparh para poder funcionar??<br /> <br /> Eu coloco todos, mais to querendo colocar apenas os necessários...]]></description>
				<guid isPermaLink="true">http://www.portaljava.com/forum/posts/preList/45219/166150.page</guid>
				<link>http://www.portaljava.com/forum/posts/preList/45219/166150.page</link>
				<pubDate><![CDATA[Mon, 17 Nov 2008 17:01:36]]> GMT</pubDate>
				<author><![CDATA[ Suelmar]]></author>
			</item>
			<item>
				<title>Erro no codigo.</title>
				<description><![CDATA[ Pessoal, estou começando a mexer com o java mobile e ai em baixo esta o meu primeiro codigo. <br /> Ambos feito no eclipse e no netbeans, porem, ambos estao com o mesmo erro. Já tentei colocar abstract mas <br /> ao aparecer a tela do emulador, nao aparece nada. Alguem poderia me dar um help?<br /> <br /> Obrigado!<br /> <br /> <br /> import javax.microedition.midlet.MIDlet;<br /> import javax.microedition.lcdui.Display;<br /> import javax.microedition.lcdui.TextBox;<br /> <br /> public class PrimeiraMID extends MIDlet {<br /> 	private Display Tdisplay;<br /> 	TextBox box = null;<br /> <br /> 	public PrimeiraMID() {<br /> <br /> 	}<br />        	public void stardApp(){<br /> 		Tdisplay = Display.getDisplay(this);<br /> 		box = new TextBox("Primeiro Exemplo","Hello World", 20, 0);<br /> 		Tdisplay.setCurrent(box);<br /> 	}<br /> 	public void pauseApp(){<br /> <br /> 	}<br /> 	public void destroyApp(boolean unconditional){<br /> <br /> 	}<br /> <br /> }<br /> <br /> <br /> C:\Documents and Settings\Administrator\My Documents\NetBeansProjects\PrimeiraMid\src\PrimeiraMID.java:5: PrimeiraMID is not abstract and does not override abstract method startApp() in javax.microedition.midlet.MIDlet<br /> public class PrimeiraMID extends MIDlet {<br /> ]]></description>
				<guid isPermaLink="true">http://www.portaljava.com/forum/posts/preList/45218/166145.page</guid>
				<link>http://www.portaljava.com/forum/posts/preList/45218/166145.page</link>
				<pubDate><![CDATA[Sun, 16 Nov 2008 14:59:26]]> GMT</pubDate>
				<author><![CDATA[ rhkw]]></author>
			</item>
			<item>
				<title>Arquivos Binários</title>
				<description><![CDATA[ import java.io.*;<br /> import javax.swing.* ;<br /> <br /> class Empregado {<br />     String nome;<br />     String cargo;<br />     int matricula;<br />     double salario;<br />     Endereco end_res; <br /> }<br /> class Endereco {<br />     String rua;<br />     int numero;<br />     String cidade;<br />     String estado;<br /> }<br /> <br /> public class Emp {<br />     static String arquivo="cadastros.dat";<br />     public static void main(String args[]) {<br />        try {<br />            RandomAccessFile cadastro = null; //declaração<br />            cadastro = new RandomAccessFile(new File(arquivo), "rw");<br />            Empregado emp = new Empregado();<br />            emp.matricula=Integer.parseInt(JOptionPane.showInputDialog("Matrícula"));<br />            emp.nome=JOptionPane.showInputDialog("Nome");<br />            emp.cargo=JOptionPane.showInputDialog("Cargo");<br />            emp.salario=Double.parseDouble(JOptionPane.showInputDialog("Salário"));<br />            emp.end_res.rua=JOptionPane.showInputDialog("Rua");<br />            emp.end_res.numero=Integer.parseInt(JOptionPane.showInputDialog("Número"));<br />            emp.end_res.cidade=JOptionPane.showInputDialog("Cidade");<br />            emp.end_res.estado=JOptionPane.showInputDialog("Estado");<br />            <br />            cadastro.seek(cadastro.length()); <br />            <br />            cadastro.writeInt(emp.matricula);<br />            cadastro.writeUTF(emp.nome);<br />            cadastro.writeUTF(emp.cargo);<br />            cadastro.writeDouble(emp.salario);<br />            cadastro.writeUTF(emp.end_res.rua);<br />            cadastro.writeInt(emp.end_res.numero);<br />            cadastro.writeUTF(emp.end_res.cidade);<br />            cadastro.writeUTF(emp.end_res.estado);<br />            <br />            <br />            cadastro.close();<br />        } catch (IOException e) {<br />            JOptionPane.showMessageDialog(null,"não possível abrir o arquivo");<br />        }<br />        <br />    }<br /> }<br /> <br /> quando eu vou rodar, ele pede as informações certinhas até o "emp.end_res.rua=JOptionPane.showInputDialog("Rua");", nessa se eu botar algo, ele vai dar o erro:<br /> <br /> Exception in thread "main" java.lang.NullPointerException<br />         at Emp.main(Emp.java:29)<br /> Java Result: 1<br /> <br /> o que fazer ?<br /> obrigado.]]></description>
				<guid isPermaLink="true">http://www.portaljava.com/forum/posts/preList/45217/166144.page</guid>
				<link>http://www.portaljava.com/forum/posts/preList/45217/166144.page</link>
				<pubDate><![CDATA[Sun, 16 Nov 2008 12:54:13]]> GMT</pubDate>
				<author><![CDATA[ jony_jony]]></author>
			</item>
			<item>
				<title>Xstream + Hibernate</title>
				<description><![CDATA[ Olá pessoal... <br /> <br /> To com um problema aqui com o uso de Xstream + Hibernate... Quando tento trazer do banco de dados a lista de registros usando o lista = sessao.createQuery.... Blá..blá....<br /> <br /> no caso no servidor eu pego essa lista retornada pelo hibernate e jogo pro Xstream pra converter pra um xml e enviar pro cliente.... ae la faço o contrario usando o Xstream...<br /> <br /> Ae que vem a bucha.... Dispara um erro dizendo... Cannot handle CGLIB enhanced proxies with multiple callbacks<br /> <br /> Se alguem souber algum motivo que possa estar ocasionando isso... por favor me ajude.... Abraços!!!<br /> ]]></description>
				<guid isPermaLink="true">http://www.portaljava.com/forum/posts/preList/45216/166141.page</guid>
				<link>http://www.portaljava.com/forum/posts/preList/45216/166141.page</link>
				<pubDate><![CDATA[Sat, 15 Nov 2008 22:31:35]]> GMT</pubDate>
				<author><![CDATA[ JLoko]]></author>
			</item>
			<item>
				<title>Eventos dos botões</title>
				<description><![CDATA[ Boa tarde galera!!!<br /> <br /> Estou criando uma aplicação que é um cadastro de cliente. Nessa aplicação contém 4 botões com as operações basicas (cadastrar, cancelar, consultar e alterar). Gostaria de saber como faço os eventos (Action Performed) para cada botão em código jáva.<br /> <br /> Grato]]></description>
				<guid isPermaLink="true">http://www.portaljava.com/forum/posts/preList/45215/166140.page</guid>
				<link>http://www.portaljava.com/forum/posts/preList/45215/166140.page</link>
				<pubDate><![CDATA[Sat, 15 Nov 2008 12:35:19]]> GMT</pubDate>
				<author><![CDATA[ robsonsp]]></author>
			</item>
			<item>
				<title>Banco de dados OO</title>
				<description><![CDATA[ Galera,<br /> <br /> Estou participando da construção de uma proposta de software ( provavelmente utilizará java/c++ ) aqui na empresa e sugeriram utilizar um banco de dados OO.<br /> <br /> Como estou por fora da realidade que se encontra a tecnologia atualmente, gostaria da opinião de vocês. <br /> <br /> - O que acham vale a pena??<br /> - Quais as principais vantagens e desvantagens ?<br /> <br /> A principio estava olhando:<br />  - versant -&gt; <a class="snap_shots" href="http://www.versant.com" target="_blank" rel="nofollow">http://www.versant.com</a><br />  - caché -&gt; <a class="snap_shots" href="http://www.intersystems.com.br" target="_blank" rel="nofollow">http://www.intersystems.com.br</a><br /> <br /> flw]]></description>
				<guid isPermaLink="true">http://www.portaljava.com/forum/posts/preList/45214/166138.page</guid>
				<link>http://www.portaljava.com/forum/posts/preList/45214/166138.page</link>
				<pubDate><![CDATA[Fri, 14 Nov 2008 07:44:21]]> GMT</pubDate>
				<author><![CDATA[ lap_junior]]></author>
			</item>
			<item>
				<title>extends MeuJInternalFrame (Netbeans)</title>
				<description><![CDATA[ Boa noite a todos...<br /> <br /> Seguinte, sou programador em delphi a algum tempo.. e estou afim de fazer algumas coisas que faço em delphi em Java.<br /> No Delphi consigo fazer um form herdar todas as características de outro form. <br />  TMeuForm = class(TFormPai)<br /> <br /> Eu gostaria de cria um JInternalFrame modelo no Netbeans, e fazer alguma especia de extends na propria IDE, e apenas implementar algo no final.<br /> Assim, quando eu alterar o modelo, iria alterar todos os filhos... <br /> <br /> Sei que sem usar a IDE, isso é possível, porém não poderia usar os recursos de Visual GUI do Netbeans.<br /> <br /> Muito obrigado,<br /> ]]></description>
				<guid isPermaLink="true">http://www.portaljava.com/forum/posts/preList/45213/166137.page</guid>
				<link>http://www.portaljava.com/forum/posts/preList/45213/166137.page</link>
				<pubDate><![CDATA[Thu, 13 Nov 2008 19:05:06]]> GMT</pubDate>
				<author><![CDATA[ edgardksb]]></author>
			</item>
	</channel>
</rss>