English

 

Todos os registros: Tomcat

Start the tomcat in debug mode for debugging in eclipse

1. Open the startup script in (your_tomcat_home) {Location is : %CATALINA_HOME%binstartup.bat }
2. Add the following lines at the first blank line in the file ( around line 8 )
Windows :

set JPDA_ADDRESS=8000
set JPDA_TRANSPORT=dt_socket

Linux:

export JPDA_ADDRESS=8000
export JPDA_TRANSPORT=dt_socket

3. Change the execute line at the end to include “jpda”
Window:

call “%EXECUTABLE%” jpda start %CMD_LINE_ARGS%

Linux:

exec “$PRGDIR”/”$EXECUTABLE” jpda start “$@”

 

Source> http://shivasoft.in/blog/java/how-to-start-the-tomcat-in-debug-mode-for-debugging-in-eclipse/

Apache TomEE certificado com Web Profile do Java EE 6

Essa semana no JavaOne, a Fundação Apache anunciou o Apache TomEE, uma implementação certificada do Java EE 6 Web Profile baseada nos projetos Tomcat, OpenWebBeans, MyFaces, ActiveMQ, OpenJPA e CXF, todos da Apache. O projeto era conhecido anteriormente como uma integração do Tomcat com o OpenEJB, mas foi renomeado para TomEE (pronúncia: “Tommy”) para deixar claro o suporte a outras tecnologias do Java EE, além de EJB.

O Apache TomEE se uniu a outras implementações open source do Java EE, como o GlassFish, JBoss e Apache Geronimo, entrando como a sexta integrante do grupo de implementações certificadas do Java EE.

Algumas vantagens do TomEE:

  1. Tamanho: o perfil Web completo tem somente 24 MB;
  2. Uso de memória: exige pouca memória; passou pelo TCK (Technology Compatibility Kit) sem a necessidade de aumentar a alocação padrão de memória;
  3. Agilidade: o servidor pode passar pelas etapas de inicializar/deploy/testar/undeploy/parar em um ciclo de 2 a 3 segundos, quando executado no modo embedded (modo compacto, sem configurações adicionais).

Pelo tamanho reduzido, o TomEE torna-se uma alternativa interessante quando executado em ambiente de nuvem, onde é comum a presença de um número grande de pequenos aplicativos ao invés de instâncias de maior porte.

Falando em Cloud, o servidor foi certificado sobre os tipos de instâncias da Amazon EC2: t1.micro, m1.small e m1.large, todos de 32 bits. A certificação para ambientes de 64 bits será realizada em um futuro bem próximo.

Mais informações sobre o Apache TomEE podem ser encontradas na página do projeto OpenEJB em http://openejb.apache.org/. Atualmente o projeto encontra-se em versão beta, mas já foi disponibilizada página para o download imediato.

Novo componente para Tomcat 7 permite reduzir drasticamente sessões abandonadas

O novo valve Crawler Session Manager para o Tomcat 7 pode ajudar muito os administradores de aplicações web públicas, nas quais o excesso de sessões é um problema complexo que frequentemente passa despercebido – pois é difícil distinguir usuários legítimos de robôs de busca e outros sistemas.

Mark Thomas, responsável pelo site de pendências da Apache Software Foundation (que usa o JIRA executando sobre o Tomcat 7), apresentou uma experiência interessante em seu blog:

Alguns meses atrás, ao examinar a interface de gerenciamento do JIRA, notei que havia aproximadamente 100 mil sessões concorrentes. Dado que existem apenas 60 mil usuários cadastrados e menos de 5 mil ativos por mês, o número me pareceu realmente exagerado.

A investigação do problema revelou um suspeito inusitado:

O log de acessos mostrou que quando os indexadores (ex.: googlebot, bingbot etc.) percorriam o site do JIRA, criavam uma nova sessão a cada requisição. Para nossa instância do JIRA, isso significava que 95% das sessões eram abandonadas pelos bots após uma requisição.

A mudança gerou resultados drásticos. Somente implementar a valve no Tomcat que hospeda o JIRA em issues.apache.orgreduziu 20 vezes a média de sessões concorrentes, de cerca de 100 mil para 5 mil.

O que a valve Crawler Session Manager faz é não iniciar uma segunda sessão se o cabeçalho HTTP user-agent casar com uma expressão regular, que por padrão captura os buscadores mais conhecidos  (“*[bB]ot.*|.*Yahoo! Slurp.*|.*Feedfetcher-Google.*”). A configuração do valve permite que a lista seja estendida para outros buscadores e clientes que não gerenciam cookies, como é frequentemente o caso de clientes REST.

Além de implementar a especificação de Servlets 3.0, o novo Tomcat inclui funcionalidades importantes para o desenvolvimento de aplicações web públicas, como o filtro de proteção contra ataques Cross-Site Request Forgery (CSRF) e a detecção de vazamentos de memória. Para conhecer mais sobre estes componentes, visite o site oficial do projeto e a comunidade Tomcat Expert, que frequentemente publica detalhes sobre o funcionamento interno do Tomcat.

Apache Tomcat 7.0.14 Disponível!

tomcat

Announced this morning by the Apache Tomcat team:

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

The Apache Tomcat team announces the immediate availability of Apache Tomcat 7.0.14.

Apache Tomcat 7.0.14 includes bug fixes and the following new features compared to version 7.0.12:

  • new StuckThreadDetectionValve to identify long running requests
  • JAAS authentication support for the JMXRemoteLifecycleListener
  • updated MIME type mappings to align with those of Apache httpd

Please refer to the change log for the list of changes:

http://tomcat.apache.org/tomcat-7.0-doc/changelog.html

Note that this version has 4 zip binaries: a generic one and three bundled with Tomcat native binaries for Windows operating systems running on different CPU architectures.

Downloads:
http://tomcat.apache.org/download-70.cgi

Migration guide from Apache Tomcat 5.5.x and 6.0.x:
http://tomcat.apache.org/migration.html

Thank you,

– The Apache Tomcat Team

 

Novo componente para Tomcat 7 permite reduzir drasticamente sessões abandonadas

O novo valve Crawler Session Manager para o Tomcat 7 pode ajudar muito os administradores de aplicações web públicas, nas quais o excesso de sessões é um problema complexo que frequentemente passa despercebido – pois é difícil distinguir usuários legítimos de robôs de busca e outros sistemas.

Mark Thomas, responsável pelo site de pendências da Apache Software Foundation (que usa o JIRA executando sobre o Tomcat 7), apresentou uma experiência interessante em seu blog:

Alguns meses atrás, ao examinar a interface de gerenciamento do JIRA, notei que havia aproximadamente 100 mil sessões concorrentes. Dado que existem apenas 60 mil usuários cadastrados e menos de 5 mil ativos por mês, o número me pareceu realmente exagerado.

A investigação do problema revelou um suspeito inusitado:

O log de acessos mostrou que quando os indexadores (ex.: googlebot, bingbot etc.) percorriam o site do JIRA, criavam uma nova sessão a cada requisição. Para nossa instância do JIRA, isso significava que 95% das sessões eram abandonadas pelos bots após uma requisição.

A mudança gerou resultados drásticos. Somente implementar a valve no Tomcat que hospeda o JIRA em issues.apache.org reduziu 20 vezes a média de sessões concorrentes, de cerca de 100 mil para 5 mil.

O que a valve Crawler Session Manager faz é não iniciar uma segunda sessão se o cabeçalho HTTP user-agent casar com uma expressão regular, que por padrão captura os buscadores mais conhecidos  (“*[bB]ot.*|.*Yahoo! Slurp.*|.*Feedfetcher-Google.*”). A configuração do valve permite que a lista seja estendida para outros buscadores e clientes que não gerenciam cookies, como é frequentemente o caso de clientes REST.

Além de implementar a especificação de Servlets 3.0, o novo Tomcat inclui funcionalidades importantes para o desenvolvimento de aplicações web públicas, como o filtro de proteção contra ataques Cross-Site Request Forgery (CSRF) e a detecção de vazamentos de memória. Para conhecer mais sobre estes componentes, visite o site oficial do projeto e a comunidade Tomcat Expert, que frequentemente publica detalhes sobre o funcionamento interno do Tomcat.

Fonte: http://www.infoq.com/br/news/2011/05/crawler-session-manager;jsessionid=2FB82B54EE3870FBE77F7BBD7FCAF23D

 

Dica Apache Tomcat 7 – Bibliotecas Compartilhadas

Anteriormente no Apache Tomcat 5.5, existiam 3 diretórios que pudessem conter JARs de bibliotecas, para serem compartilhados entre as aplicações. Na época, era uma confusão.

À partir da versão 6, tudo ficou mais simples, com um único diretório: lib. Na versão 7 isto foi mantido. Porém pode ser o caso de se querer usar um diretório separado para bibliotecas de frameworks. Misturar isso com os JARs do Tomcat parece arriscado e insensato.

Para não correr o risco de estragar o Tomcat, sobrescrevendo acidentalmente algum JAR, o ideal é criar um diretório chamado, por exemplo, shared. E jogar nele os JARs de frameworks e bibliotecas comumente utilizados nas aplicações. Para isso, edite o arquivo conf/catalina.properties, e edite a propriedade common.loader, adicionando estes dois argumentos:

    ${catalina.home}/shared
    ${catalina.home}/shared/*.jar

O resultado, na versão 7.0, fica assim:

    common.loader=${catalina.base}/lib,${catalina.base}/lib/*.jar,${catalina.home}/lib,${catalina.home}/lib/*.jar,${catalina.home}/shared,${catalina.home}/shared/*.jar

E assim, fica definido um diretorio para bibliotecas compartilhadas, ou também conhecido como shared libraries (shared lib).

Eclipse
No Eclipse Helios (3.6) quando se utiliza um servidor Tomcat para rodar aplicações Web, o plugin WTP cria um projeto chamado Servers. Neste caso, a configuração do Tomcat é copiada para esta página. Caso você já possua um Tomcat configurado no Eclipse, edite o arquivo catalina.properties presente no projeto Servers.

Por Bruno Borges – http://blog.ladoservidor.com/2011/03/apache-tomcat-7-bibliotecas.html