VirtualBox – Expandindo espaço do disco

Passos para expandir o tamanho do seu disco virtual do VirtualBox

É possível que, após trabalhar um tempo em uma máquina virtual gerada pelo VirtualBox, você perceba que o seu disco virtual começou a ficar sem espaço.

Por esta razão eu expandi o tamanho do meu disco de 25 Gb para 100Gb, seguindo os seguintes passos:

Continue lendo “VirtualBox – Expandindo espaço do disco”

Bug Oracle Driver 11.2.0.x

Solução de contorno para o erro “SQLException: Invalid column type: sqlType=2009” lançado pelo Driver Oracle ojdbc.jar versão 11.2.0.x ao tentar atribuir NULL a uma coluna do tipo XMLTYPE

Ao utilizar o Driver do Oracle ojdbc.jar versão 11.2.0.x, não foi possível atribuir NULL a uma coluna do tipo XMLTYPE, utilizando o java.sql.Type correspondente. Assim, na execução do código statement.setNull(i, Types.SQLXML) o driver lança o seguinte erro:  SQLException: Invalid column type: sqlType=2009.

Após gastar um tempo de pesquisa, não encontrei nenhum fix do driver. O que encontrei foi uma solução de contorno, conforme código abaixo. Continue lendo “Bug Oracle Driver 11.2.0.x”

JBoss EAP 6.x ClassLoading Isolation

Sem dúvida que Servidores JEE que se prezem são mais robustos, mesmo para simples aplicações WAR. Assim, se o Classloading Isolation é trabalhoso, vale a pena o esforço.

JBossAS7ClassloadingAssim como acontece muito nos Servidores de Aplicação JEE como o  IBM WebSphere ou no Oracle WebLogic, o Classloading Isolation no JBoss EAP não é tão simples em alguns casos. Claro que o nosso desejo é sempre gerarmos um EAR/WAR “limpo” de arquivos de configurações, que rode em qualquer servidor de aplicação. Geralmente temos desistido e voltado para o bom e velho Apache Tomcat, o que não é ruim quando precisamos rodar apenas arquivos WAR. Creio que não temos muitos problemas com o Tomcat porque ele não possui (em seu ambiente) muitas APIs ou Frameworks que poderiam provocar conflitos com as utilizadas pelas aplicações. Mas é fato que nem sempre iremos produzir somente pacotes WAR. E quando precisarmos de Segurança, Escalabilidade, Transação e outros tantos serviços presentes na especificação JEE? Sem dúvida que Servidores de Aplicação JEE que se prezem são mais robustos, mesmo para simples aplicações WAR. Assim, se o Classloading Isolation é trabalhoso, vale a pena o esforço (até certo ponto, obviamente).

À medida que eu encontrar problemas e soluções de Classloading Isolation no JBoss, vou atualizando este post. Descrevo abaixo alguns problemas e soluções:

1) Isolando bibliotecas do EAP 6.x para utilizar as que estão definidas na aplicação

Basicamente, basta configurar o arquivo /WEB-INF/jboss-deployment-structure.xml. No exemplo abaixo, a versão do SL4J utilizada pelo EAP é excluída do classloading, para que seja utilizada a versão definida na aplicação:

post 1-1

Esta é a configuração básica de isolamento e deve funcionar na maioria dos casos. Entretanto, para determinadas APIs, o isolamento não é tão simples, como é o caso do JSF (Java Server Faces) e JPA (Java Persistence API).

Continue lendo “JBoss EAP 6.x ClassLoading Isolation”

Versões antigas do Firefox

Por uma necessidade específica de desenvolvimento, precisei recuperar antigas versões do Firefox. Listo neste post duas boas opções.

Versões antigas do FirefoxPor uma necessidade específica de desenvolvimento, precisei recuperar antigas versões do Firefox. Listo abaixo duas boas opções:

1) FTP da Mozila: todos os releases do Firefox disponíveis publicamente;

2) Utilu Mozila Firefox Collection: software que contém múltiplas versões standalone do Firefox.

Espero que seja útil a alguém.

Problema JS usando rich:comboBox

O problema relatado neste post foi descoberto utilizando o componente do RichFaces na versão 3.3.3.Final. Tendo em vista não ter sido encontrado, na Internet, a razão para o erro de JavaScript informado abaixo, descrevemos o problema (javascript) e a “solução” adotada

O problema relatado neste post foi descoberto utilizando o componente <rich:comboBox> do RichFaces na versão 3.3.3.Final. Tendo em vista não ter sido encontrado, na Internet, a razão para o erro de JavaScript informado abaixo, descrevemos o problema (javascript) e a “solução” adotada:

PROBLEMA:

  • No Chrome

Uncaught Error: NOT_FOUND_ERR: DOM Exception 8
Richfaces.ComboBoxList.resetStatecombolist.js:24
Richfaces.ComboBoxList.hidecombolist.js:10
Richfaces.ComboBoxList.hideWithDelaycombolist.js:10
Richfaces.ComboBox.fieldBlurHandlercombobox.js:25
(anonymous function)3_3_3.Finalorg.ajax4jsf.javascript.PrototypeScript:17
wrapper

  • No Firefox

Erro: uncaught exception: [Exception… “Node was not found” code: “8” nsresult: “0x80530008 (NS_ERROR_DOM_NOT_FOUND_ERR)” location: “/ContextRoot/faces/a4j/g/3_3_3.Finalscripts/combolist.js Line: 24”]

SOLUÇÃO:

Continue lendo “Problema JS usando rich:comboBox”