Categorias
Java EE Programação

Weblogic 10.3.0.0 + JSF 2.0 + @EJB Injection

Ao se colocar o JSF 2.0 no Weblogic 10.3.0.0, os EJB’s não são injetados nos manageds beans do JSF através da anotação @EJB. Para corrigir esse problema, basta utilizar a classe abaixo: E declarar o el-resolver no faces-config.xml:

Categorias
Java Java EE Programação

Weblogic + JPA + Hibernate = ClassNotFoundException: org.hibernate.hql.ast.HqlToken

Ao tentar efetuar o deploy de uma aplicação com JPA (implementação: Hibernate), ocorre o seguinte erro: org.springframework.orm.hibernate3.HibernateQueryException: ClassNotFoundException: org.hibernate.hql.ast.HqlToken [SELECT p FROM PARAMETRO p WHERE UPPER(RTRIM(p.parametroPK.parametroGeral)) = :parametroGeral AND UPPER(RTRIM(p.parametroPK.codigo)) = :codigo]; nested exception is org.hibernate.QueryException: ClassNotFoundException: org.hibernate.hql.ast.HqlToken [SELECT p FROM PARAMETRO p WHERE UPPER(RTRIM(p.parametroPK.parametroGeral)) = :parametroGeral AND UPPER(RTRIM(p.parametroPK.codigo)) = :codigo] Caused by: org.hibernate.QueryException: ClassNotFoundException: […]

Categorias
Java Programação

Passando propriedades de sistemas para os testes no maven

Esses dias precisei fazer alguns testes que verificavam se existia uma propriedade de sistema para tomar determinada ação. Ao se passar a propriedade através da seguinte linha de comando: mvn -Dminha.propriedade=valor test Verifiquei que o teste nunca encontrava a propriedade passada através da chamada System.getProperty(“minha.propriedade”). Dois jeitos fáceis para fazer a passagem de propriedade corretamente […]

Categorias
Oracle Programação

Describe no Oracle de uma tabela com dblink

Primeiramente vamos encontrar o nome do dblink onde a tabela está realmente localizada. Isto é feito através do comando: SELECT    DB_LINK FROM    ALL_SYNONYMS WHERE    SYNONYM_NAME = ‘MINHA_TABELA’ Após isto basta obter as informações da tabela com os seguintes selects: SELECT    * FROM    ALL_TABLES@MEU_DB_LINK WHERE    TABLE_NAME = ‘MINHA_TABELA’ SELECT    * FROM    USER_TAB_COLUMNS@MEU_DB_LINK WHERE    TABLE_NAME = ‘MINHA_TABELA’ […]

Categorias
Java Programação Selenium

Selenium + Wait for Ajax

Hoje tive que fazer um teste automatizado que deveria obrigatoriamente esperar por um Ajax ser executado para continuar a sua execução. Encontrei este link: http://agilesoftwaretesting.com/?p=111, que fala o seguinte: Faça um método em java como: public static void waitForAjax(Selenium selenium, String timeout) { String js_condition = “selenium.browserbot.getCurrentWindow().jQuery.active == 0”; selenium.waitForCondition(js_condition, timeout); } O valor da […]

Categorias
Programação

The Duct Tape Programmer

Hoje voltei a ler os artigos que estavam armazenados nas abas do meu firefox! Este eu não lembro quem me enviou, acho que foi pelo twitter. Alguns trechos interessantes: And the duct-tape programmer is not afraid to say, “multiple inheritance sucks. Stop it. Just stop.” Here’s what Zawinski says about Netscape: “It was decisions like […]

Categorias
Programação

O mínimo que todo o desenvolvedor de software precisa saber sobre Unicode e CharSets

Hoje, após muito tempo resolvi ler um artigo recomendado por um colega do trabalho (Willian). O artigo fala sobre o problema da representação de string nos computadores e como escrever uma aplicação de forma correta para que os usuários não vejam o texto com problemas (como por exemplo letras substituídas por uma ? ou um […]

Categorias
MySQL PHP

PHP + Zend + PDO + MySQL

Hoje eu estava fazendo um site utilizando php, Zend Framework, PDO e MySQL. Quando fui fazer uma tela que se conectava com o banco de dados, ocorria o seguinte erro: SQLSTATE[HY000] [2005] Unknown MySQL server host ”localhost” (1) Removi do arquivo de configuração a linha que informava o host onde estava o banco de dados […]

Categorias
Java Programação Vida

Novo Site do PagSeguro

O novo site do PagSeguro não foi apenas uma melhoria no código antigo, foi muito mais que isso. O novo site do PagSeguro foi a reescrita completa de um enorme sistema que estava em produção. A entrada em produção começou no dia 30/10/2009 no início da noite, onde o sistema antigo foi alterado para não […]

Categorias
Programação Python

Turbogears 2 + i18n + formatação de datas e números

Para setar a linguagem padrão da sua aplicação utilizando o turbogears basta editar o arquivo development.ini e incluir a seguinte linha após [app:main]: lang = pt_BR Depois execute os seguintes comandos: python setup.py extract_messages python setup.py init_catalog -l pt_BR python setup.py compile_catalog O primeiro comando extrai todas as mensages que devem ser traduzidas (dos templates […]