Pessoal estou subindo meu projeto para produção e ao acessar uma das páginas acontece o seguinte erro:
org.apache.jasper.JasperException: Unable to compile class for jsp: an error occurred at line the method proprietaryEvaluate(String, Class<String>, pageContext, null)
Em desenvolvimento isso não acontece. O que pode ser?
Seria bom você explicar como estão modelados os ambientes de desenvolvimento e produção. Eu diria para verificar a atualização de todas as suas dependências. Além disso, verificar se alguma dependência já não é padrão do servidor de aplicação que você está utilizando. Uma vez um colega teve um problema desses por ter implantado um jar do jasper para o Tomcat, sendo que ele fornece o próprio jasper. Ele utilizava a versão inferior na produção e a versão 8 no desenvolvimento. Concluímos depois de dias que a assinatura nos métodos eram diferentes de uma versão para outra.
P
prirodovalho
Bom dia,
Logusmao,
Eu nem estou usando jasper. A diferença que em desenvolvimento em fiz usando windows e produção é linux. Estou utilizando Jetty e Maven. Vou verificar se pode ser alguma dependência do maven ou configuração de alguma variável. Obrigada pela dica.
L
Logusmao
prirodovalho,
Por incrível que pareça, não tem nada a ver mesmo… No entanto, algumas pessoas mantém um pom de um projeto para outro e acabam chamando algumas dependências desnecessárias. Como o jasper já vem embutido, algumas classes vinculam alguns métodos com ele.
Eu até conversei com esse colega hoje, e ele até me mostrou onde ele encontrou a solução
Veja se te ajuda… se não, linka o pom para dar uma olhada
P
prirodovalho
Logusmao,
Boa tarde,
Vou olhar esses links que vc me enviou. Obrigada. Olha o pom:
<?xml version="1.0" encoding="UTF-8"?>
4.0.0
br.com.website
website
0.0.1-SNAPSHOT
war
<repositories><repository><snapshots><enabled>false</enabled></snapshots><id>central</id><name>MavenRepositorySwitchboard</name><url>http://repo1.maven.org/maven2</url></repository></repositories><dependencies><dependency><groupId>javax.activation</groupId><artifactId>activation</artifactId><version>1.1.1</version></dependency><dependency><groupId>antlr</groupId><artifactId>antlr</artifactId><version>2.7.7</version></dependency><dependency><groupId>com.fasterxml</groupId><artifactId>classmate</artifactId><version>1.0.0</version></dependency><dependency><groupId>commons-beanutils</groupId><artifactId>commons-beanutils</artifactId><version>1.9.2</version></dependency><dependency><groupId>commons-collections</groupId><artifactId>commons-collections</artifactId><version>3.2.2</version></dependency><dependency><groupId>commons-dbcp</groupId><artifactId>commons-dbcp</artifactId><version>1.4</version></dependency><dependency><groupId>commons-digester</groupId><artifactId>commons-digester</artifactId><version>1.8</version></dependency><dependency><groupId>org.apache.commons</groupId><artifactId>commons-email</artifactId><version>1.2</version></dependency><dependency><groupId>org.apache.commons</groupId><artifactId>commons-email</artifactId><version>1.4</version></dependency><dependency><groupId>commons-logging</groupId><artifactId>commons-logging</artifactId><version>1.1.3</version></dependency><dependency><groupId>commons-pool</groupId><artifactId>commons-pool</artifactId><version>1.6</version></dependency><dependency><groupId>commons-validator</groupId><artifactId>commons-validator</artifactId><version>1.5.1</version></dependency><dependency><groupId>dom4j</groupId><artifactId>dom4j</artifactId><version>1.6.1</version></dependency><dependency><groupId>com.sun.mail</groupId><artifactId>dsn</artifactId><version>1.5.5</version></dependency><dependency><groupId>org.hibernate</groupId><artifactId>ejb3-persistence</artifactId><version>1.0.2.GA</version><type>pom</type></dependency><dependency><groupId>com.sun.mail</groupId><artifactId>gimap</artifactId><version>1.5.5</version></dependency><dependency><groupId>org.hibernate.common</groupId><artifactId>hibernate-commons-annotations</artifactId><version>4.0.5.Final</version></dependency><dependency><groupId>org.hibernate</groupId><artifactId>hibernate-core</artifactId><version>4.3.11.Final</version></dependency><dependency><groupId>org.hibernate</groupId><artifactId>hibernate-entitymanager</artifactId><version>4.3.11.Final</version></dependency><dependency><groupId>org.hibernate.javax.persistence</groupId><artifactId>hibernate-jpa-2.1-api</artifactId><version>1.0.0.Final</version></dependency><dependency><groupId>org.hibernate</groupId><artifactId>hibernate-validator</artifactId><version>5.0.2.Final</version></dependency><dependency><groupId>com.sun.mail</groupId><artifactId>imap</artifactId><version>1.5.2</version></dependency><dependency><groupId>org.jboss</groupId><artifactId>jandex</artifactId><version>1.1.0.Final</version></dependency><dependency><groupId>org.javassist</groupId><artifactId>javassist</artifactId><version>3.18.1-GA</version></dependency><dependency><groupId>javax.mail</groupId><artifactId>javax.mail-api</artifactId><version>1.5.5</version></dependency><dependency><groupId>javax.servlet</groupId><artifactId>jstl</artifactId><version>1.2</version></dependency><dependency><groupId>javax.servlet.jsp.jstl</groupId><artifactId>javax.servlet.jsp.jstl-api</artifactId><version>1.2.1</version></dependency><dependency><groupId>org.jboss.logging</groupId><artifactId>jboss-logging</artifactId><version>3.1.3.GA</version></dependency><dependency><groupId>org.jboss.logging</groupId><artifactId>jboss-logging-annotations</artifactId><version>1.2.0.Beta1</version></dependency><dependency><groupId>org.jboss.spec.javax.transaction</groupId><artifactId>jboss-transaction-api_1.1_spec</artifactId><version>1.0.0.Final</version></dependency><dependency><groupId>log4j</groupId><artifactId>log4j</artifactId><version>1.2.17</version></dependency><dependency><groupId>javax.mail</groupId><artifactId>mail</artifactId><version>1.4.7</version></dependency><dependency><groupId>javax.mail</groupId><artifactId>mailapi</artifactId><version>1.4.3</version></dependency><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>5.1.38</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-context-support</artifactId><version>4.2.6.RELEASE</version></dependency><dependency><groupId>com.sun.mail</groupId><artifactId>pop3</artifactId><version>1.5.5</version></dependency><dependency><groupId>org.slf4j</groupId><artifactId>slf4j-api</artifactId><version>1.6.1</version></dependency><dependency><groupId>org.slf4j</groupId><artifactId>slf4j-log4j12</artifactId><version>1.6.1</version></dependency><dependency><groupId>com.sun.mail</groupId><artifactId>smtp</artifactId><version>1.5.5</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-aop</artifactId><version>4.2.6.RELEASE</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-aspects</artifactId><version>4.2.6.RELEASE</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-beans</artifactId><version>4.2.6.RELEASE</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-context</artifactId><version>4.2.6.RELEASE</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-core</artifactId><version>4.2.6.RELEASE</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-expression</artifactId><version>4.2.6.RELEASE</version></dependency><dependency><groupId>org.springframework.integration</groupId><artifactId>spring-integration-core</artifactId><version>4.2.6.RELEASE</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-jdbc</artifactId><version>4.2.6.RELEASE</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-web</artifactId><version>4.2.6.RELEASE</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-webmvc</artifactId><version>4.2.6.RELEASE</version></dependency><dependency><groupId>javax.validation</groupId><artifactId>validation-api</artifactId><version>1.1.0.Final</version></dependency><dependency><groupId>org.apache.velocity</groupId><artifactId>velocity</artifactId><version>1.7</version></dependency><dependency><groupId>velocity</groupId><artifactId>velocity-dep</artifactId><version>1.4</version></dependency><dependency><groupId>velocity-tools</groupId><artifactId>velocity-tools-view</artifactId><version>1.1</version></dependency><dependency><groupId>org.eclipse.jetty</groupId><artifactId>jetty-server</artifactId><version>9.2.11.v20150529</version></dependency><dependency><groupId>taglibs</groupId><artifactId>standard</artifactId><version>1.1.2</version><scope>compile</scope></dependency><dependency><groupId>org.aspectj</groupId><artifactId>aspectjweaver</artifactId><version>1.7.4</version></dependency><dependency><groupId>jetty</groupId><artifactId>servlet-api</artifactId><version>2.5-6.0.2</version><scope>provided</scope></dependency><dependency><groupId>jetty</groupId><artifactId>jsp</artifactId><version>2.1-6.0.2</version><scope>runtime</scope></dependency><dependency><groupId>org.mortbay.jetty</groupId><artifactId>jsp-2.1</artifactId><version>6.0.0</version></dependency><!-- <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId> <version>1.2.3.RELEASE</version> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-thymeleaf</artifactId> <version>1.2.3.RELEASE</version> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <version>1.2.3.RELEASE</version> </dependency> --></dependencies><build><directory>target/</directory><finalName>website</finalName><plugins><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><version>3.5</version><configuration><source>1.8</source><target>1.8</target></configuration></plugin><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-install-plugin</artifactId><version>2.5.2</version></plugin><plugin><groupId>org.mortbay.jetty</groupId><artifactId>maven-jetty-plugin</artifactId><version>6.1.26</version><configuration><connectors><connectorimplementation="org.mortbay.jetty.nio.SelectChannelConnector"><port>8080</port></connector></connectors><contextPath>website</contextPath><scanIntervalSeconds>0</scanIntervalSeconds></configuration></plugin><plugin><groupId>org.eclipse.jetty</groupId><artifactId>jetty-maven-plugin</artifactId><version>9.3.10-SNAPSHOT</version></plugin><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-war-plugin</artifactId><version>2.6</version><configuration><webXml>src/main/webapp/WEB-INF/web.xml</webXml></configuration></plugin><plugin><artifactId>maven-clean-plugin</artifactId><version>3.0.0</version><executions><execution><id>auto-clean</id><phase>initialize</phase><goals><goal>clean</goal></goals></execution></executions></plugin></plugins></build><profiles><profile><id>only-eclipse</id><activation><property><name>m2e.version</name></property></activation><build><pluginManagement><plugins><!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself. --><plugin><groupId>org.eclipse.m2e</groupId><artifactId>lifecycle-mapping</artifactId><version>1.0.0</version><configuration><lifecycleMappingMetadata><pluginExecutions><pluginExecution><pluginExecutionFilter><groupId>org.apache.maven.plugins
</groupId><artifactId>maven-clean-plugin
</artifactId><versionRange>[3.0.0,)
</versionRange><goals><goal>clean</goal></goals></pluginExecutionFilter><action><ignore/></action></pluginExecution></pluginExecutions></lifecycleMappingMetadata></configuration></plugin></plugins></pluginManagement></build></profile></profiles>
P
prirodovalho
Olhei e não tem nenhuma dependência do jasper instalada, removi as dependências do jsp e jstl do pom e não resolveu.
L
Logusmao
Todas as dependências são necessárias?
eu vi que você chamou duas versões da mesma dependência
Removi essa duplicidade, sim todas elas são necessárias, estou usando o Spring MVC, faço envio de email usando o Velocity, uso algumas tags do JSP. Vi alguns comentários no Google que poderia ser o JAVA_HOME, alterei também e não é isso. Estranho porque em desenvolvimento no Windows não tive nenhum problema, nas próximas aplicações não vou mais trabalhar com Windows, trabalhar o mais próximo de produção.
P
prirodovalho
Vou rever essas dependencias
P
prirodovalho
Logusmao,
Descobri o que é. No servidor de desenvolvimento estou usando Jetty 8 e em produção estava o Jetty 9. Instalei o 8 e não apresentou o erro. Estranho né? Por que será?
L
Solucao aceita
Logusmao
Provavelmente uma incompatibilidade de versões. Isso acontece o tempo todo… Dei uma olhada rápida na documentação do Jetty 9 e a classe JettyJasperInitializer extende da org.apache.jasper.servlet. Provavelmente na construção de uma versão para outra houve escolha de métodos incompatíveis…
O melhor é que quem não viu a documentação realmente acha não estar lidando com Jasper no projeto, assim como diversas outras classes. Mas infelizmente está lá… Legal que você tenha encontrado