Sempre que é feito um job,uma das preocupações do lado da aplicação é em como não levar todos os registros necessários para a memória. Existem algumas maneiras para se fazer isso, sendo que as duas mais comuns que vejo são queries limitadas e queries paginadas. Além dessas duas formas existe uma terceira que é limitando […]
Categoria: Java EE
Algum tempo atrás me deparei com uma situação onde uma aplicação começava a utilizar muita CPU, o load da máquina física subia demais e o tempo de resposta da aplicação acabava piorando junto com o uso de cpu / load da máquina. Para identificar o que estava causando, colocamos um script na máquina física que […]
Um dos problemas vistos num banco Oracle com muitos DML’s concorrentes é o evento de espera “enq: TX – allocate ITL entry”. O problema com esse evento é que as sessões fazendo os comandos de alteração nos registros demoram para executar, causando mais espera na aplicação. Existem alguns jeitos de resolver esse evento de espera, […]
Um dos problemas que vejo acontecendo em diversos sistemas de produção é o pool de conexões com o banco de dados esgotar, através da exception abaixo: Geralmente, a primeira solução proposta é aumentar o pool de conexões. Só que após algum tempo o problema volta a ocorrer novamente. Olhando à partir do banco de dados […]
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:
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: […]
Este post foi traduzido e alterado deste link: http://blog.cherouvim.com/the-stupidest-things-ive-done-in-my-programming-job/ Observação: Não fui eu quem escreveu este post. Apenas fiz a tradução e alteração pois achei muito interessante. As coisas estúpidas feitas quando se trabalho com programação ORM Estupidez Construir um framework próprio de ORM. Consequências O projeto vira uma bagunça depois de 2 anos de […]
Freemarker + Sitemesh + Spring
Depois de muito tempo consegui fazer minha aplicação utilizando Freemarker (template engine) + Sitemesh (web page layout framework) + Spring (IOC, etc) funcionar. Basicamente, basta configurar no web.xml o filtro do Sitemesh (com.opensymphony.sitemesh.webapp.SiteMeshFilter), a servlet do Freemarker que vem com o Sitemesh (com.opensymphony.module.sitemesh.freemarker.FreemarkerDecoratorServlet) e a servlet do Spring MVC (org.springframework.web.servlet.DispatcherServlet). O filtro do Sitemesh é […]
PostBack no JSF
Um grande problema com o JSF é que na especificação 1.1 não existe algum método para saber se a página está sendo executada no postback (quando você reenvia os dados para ela mesma). Mas existe o seguinte workaround: package web.jsf.vh; import java.io.IOException; import java.util.Locale; import java.util.Map; import javax.faces.FacesException; import javax.faces.application.ViewHandler; import javax.faces.component.UIViewRoot; import javax.faces.context.FacesContext; public […]
JSF – Duplicate componentID
Utilizando o DataTable do RichFaces em uma simples página, após um reload na página sempre era retornado o seguinte erro: Duplicate component ID ‘_id0:_dataTable:_id1’ found in view. Segue abaixo o código da página que causava o erro: <ui:composition xmlns=”http://www.w3.org/1999/xhtml” xmlns:ui=”http://java.sun.com/jsf/facelets” xmlns:h=”http://java.sun.com/jsf/html” xmlns:f=”http://java.sun.com/jsf/core” xmlns:a4j=”https://ajax4jsf.dev.java.net/ajax” xmlns:rich=”http://richfaces.ajax4jsf.org/rich”> <h:form binding=”#{UserConsultPage.component}”> <rich:dataTable id=”dataTable” binding=”#{UserConsultPage.dataTable}” var=”item”> <rich:column> <f:facet name=”header”> <h:outputText value=”Name” […]