[RESOLVIDO] Problema ao instalar o Struts da apostila fj21 Caelum

2 respostas
natasha

Oolá, estou usando a apostila da caelum e esta dando erro quando eu instalo o Struts 2
estou colocando esses jar no lib do projeto:
commons-fileupload-1.x.x.jar, commons-io-1.x.x.jar, commons-logging-1.0.4.jar, freemarker-
2.3.15.jar, ognl-2.7.3.jar, struts2-convention-plugin-2.1.8.1.jar, struts2-core-2.1.8.1.jar e xwork-core-
2.1.6.jar.

essas são as classes:

package br.com.caelum.tarefas.action;

import org.apache.struts2.convention.annotation.Action;
import org.apache.struts2.convention.annotation.*;


public class OlaMundoAction {
    @Action(value = "olaMundoStruts", results = {
        @Result(location = "/olaMundoStruts.jsp", name = "ok") }
	)
	
	public String execute() {
		System.out.println("Executando a lógica com Struts2");
		return "ok";
	}
}
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<h2>Olá mundo com Struts2!</h2>
</body>
</html>
<web-app xmlns:javaee="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<filter>
<filter-name>struts2</filter-name>
<filter-class>
org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>

 
</web-app>

Esta dando esse erro:

GRAVE: Dispatcher initialization failed
java.lang.RuntimeException: java.lang.reflect.InvocationTargetException
	at com.opensymphony.xwork2.inject.ContainerImpl$MethodInjector.inject(ContainerImpl.java:295)
	at com.opensymphony.xwork2.inject.ContainerImpl$ConstructorInjector.construct(ContainerImpl.java:431)
	at com.opensymphony.xwork2.inject.ContainerBuilder$5.create(ContainerBuilder.java:207)
	at com.opensymphony.xwork2.inject.Scope$2$1.create(Scope.java:51)
	at com.opensymphony.xwork2.inject.ContainerBuilder$3.create(ContainerBuilder.java:93)
	at com.opensymphony.xwork2.inject.ContainerBuilder$7.call(ContainerBuilder.java:487)
	at com.opensymphony.xwork2.inject.ContainerBuilder$7.call(ContainerBuilder.java:484)
	at com.opensymphony.xwork2.inject.ContainerImpl.callInContext(ContainerImpl.java:574)
	at com.opensymphony.xwork2.inject.ContainerBuilder.create(ContainerBuilder.java:484)
	at com.opensymphony.xwork2.config.impl.DefaultConfiguration.createBootstrapContainer(DefaultConfiguration.java:252)
	at com.opensymphony.xwork2.config.impl.DefaultConfiguration.reloadContainer(DefaultConfiguration.java:193)
	at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:66)
	at org.apache.struts2.dispatcher.Dispatcher.init_PreloadConfiguration(Dispatcher.java:371)
	at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:415)
	at org.apache.struts2.dispatcher.ng.InitOperations.initDispatcher(InitOperations.java:69)
	at org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.init(StrutsPrepareAndExecuteFilter.java:51)
	at org.apache.catalina.core.ApplicationFilterConfig.initFilter(ApplicationFilterConfig.java:269)
	at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:250)
	at org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:368)
	at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:98)
	at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4193)
	at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:4792)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:138)
	at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:990)
	at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:772)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:138)
	at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:990)
	at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:275)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:138)
	at org.apache.catalina.core.StandardService.startInternal(StandardService.java:424)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:138)
	at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:648)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:138)
	at org.apache.catalina.startup.Catalina.start(Catalina.java:576)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288)
	at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:415)
Caused by: java.lang.reflect.InvocationTargetException
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	at com.opensymphony.xwork2.inject.ContainerImpl$MethodInjector.inject(ContainerImpl.java:293)
	... 39 more
Caused by: java.lang.ExceptionInInitializerError
	at com.opensymphony.xwork2.ognl.OgnlValueStackFactory.setContainer(OgnlValueStackFactory.java:85)
	... 44 more
Caused by: java.lang.IllegalArgumentException: Javassist library is missing in classpath! Please add missed dependency!
	at ognl.OgnlRuntime.<clinit>(OgnlRuntime.java:165)
	... 45 more
Caused by: java.lang.ClassNotFoundException: javassist.ClassPool
	at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1664)
	at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1509)
	at java.lang.Class.forName0(Native Method)
	at java.lang.Class.forName(Unknown Source)
	at ognl.OgnlRuntime.<clinit>(OgnlRuntime.java:162)
	... 45 more
17/09/2010 17:21:07 org.apache.catalina.core.StandardContext filterStart
GRAVE: Exception starting filter struts2
java.lang.reflect.InvocationTargetException - Class: com.opensymphony.xwork2.inject.ContainerImpl$MethodInjector
File: ContainerImpl.java
Method: inject
Line: 295 - com/opensymphony/xwork2/inject/ContainerImpl.java:295:-1
	at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:428)
	at org.apache.struts2.dispatcher.ng.InitOperations.initDispatcher(InitOperations.java:69)
	at org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.init(StrutsPrepareAndExecuteFilter.java:51)
	at org.apache.catalina.core.ApplicationFilterConfig.initFilter(ApplicationFilterConfig.java:269)
	at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:250)
	at org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:368)
	at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:98)
	at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4193)
	at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:4792)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:138)
	at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:990)
	at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:772)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:138)
	at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:990)
	at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:275)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:138)
	at org.apache.catalina.core.StandardService.startInternal(StandardService.java:424)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:138)
	at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:648)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:138)
	at org.apache.catalina.startup.Catalina.start(Catalina.java:576)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
	at java.lang.reflect.Method.invoke(Unknown Source)
	at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288)
	at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:415)

Obrigada

2 Respostas

E
Caused by: java.lang.IllegalArgumentException: Javassist library is missing in classpath! Please add missed dependency!

parece que esta faltando a biblioteca “javassist”

natasha

Olá everjava, obrigada era isso mesmo funcionou, só fica aqui a duvida:
esse jar é do JBOSS, certo? porque ele é necessário para o struts funcionar? e caso alguem tenha usando essa apostila para estudar, porque ela não estaria na lista de JAR do struts?
Obrigada, funcionou, mas ficou essa dvida.

Criado 17 de setembro de 2010
Ultima resposta 20 de set. de 2010
Respostas 2
Participantes 2