Hello World com Struts 2

3 respostas
J

Caros, estou tentando rodar o HelloWorld com Struts 2. Estou seguindo todos os passos do Getting Started. Mas acontece o erro abaixo. Mesmo adicionando o código … outros erros são gerados. Alguém pode me ajudar. Já procurei erros parecidos no fórum e não achei. Desde já, obrigado…

01/01/2002 05:51:30 org.apache.tomcat.util.digester.SetPropertiesRule begin

WARNING: [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property source to org.eclipse.jst.j2ee.server:Teste did not find a matching property.

01/01/2002 05:51:30 org.apache.catalina.core.AprLifecycleListener init

INFO: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: C:\Java\bin;.;C:\WINDOWS\Sun\Java\bin;C:\WINDOWS\system32;C:\WINDOWS;C:/Java/bin/client;C:/Java/bin;C:\Inprise\vbroker\bin;C:\ARQUIV~1\Borland\Delphi5\Projects\Bpl;C:\ARQUIV~1\Borland\vbroker\jre\Bin;C:\ARQUIV~1\Borland\vbroker\Bin;C:\ARQUIV~1\Borland\Delphi5\Bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Arquivos de programas\Microsoft SQL Server\80\Tools\BINN;C:\ARQUIV~1\Borland\Delphi6\Bin;C:\ARQUIV~1\Borland\Delphi6\Projects\Bpl;C:\Arquivos de programas\Java\jdk1.5.0_04\bin;C:\Inprise\vbroker\bin;C:\ARQUIV~1\Borland\Delphi5\Projects\Bpl;C:\ARQUIV~1\Borland\vbroker\jre\Bin;C:\ARQUIV~1\Borland\vbroker\Bin;C:\ARQUIV~1\Borland\Delphi5\Bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Arquivos de programas\Microsoft SQL Server\80\Tools\BINN;C:\ARQUIV~1\Borland\Delphi6\Bin;C:\ARQUIV~1\Borland\Delphi6\Projects\Bpl;C:\Arquivos de programas\Java\jdk1.5.0_04\bin;C:\Inprise\vbroker\bin;C:\ARQUIV~1\Borland\Delphi5\Projects\Bpl;C:\ARQUIV~1\Borland\vbroker\jre\Bin;C:\ARQUIV~1\Borland\vbroker\Bin;C:\ARQUIV~1\Borland\Delphi5\Bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Arquivos de programas\Microsoft SQL Server\80\Tools\BINN;C:\ARQUIV~1\Borland\Delphi6\Bin;C:\ARQUIV~1\Borland\Delphi6\Projects\Bpl;C:\Arquivos de programas\Java\jdk1.5.0_04\bin;C:\WINDOWS\System32;;C:\Arquivos de programas\Arquivos comuns\InstallShield

01/01/2002 05:51:30 org.apache.coyote.http11.Http11Protocol init

INFO: Initializing Coyote HTTP/1.1 on http-8080

01/01/2002 05:51:30 org.apache.catalina.startup.Catalina load

INFO: Initialization processed in 1180 ms

01/01/2002 05:51:30 org.apache.catalina.core.StandardService start

INFO: Starting service Catalina

01/01/2002 05:51:30 org.apache.catalina.core.StandardEngine start

INFO: Starting Servlet Engine: Apache Tomcat/6.0.18

01/01/2002 05:51:32 com.opensymphony.xwork2.config.providers.XmlConfigurationProvider register

INFO: Parsing configuration file [struts-default.xml]

01/01/2002 05:51:32 com.opensymphony.xwork2.config.providers.XmlConfigurationProvider register

INFO: Parsing configuration file [struts-plugin.xml]

01/01/2002 05:51:32 com.opensymphony.xwork2.config.providers.XmlConfigurationProvider register

INFO: Parsing configuration file [struts.xml]

01/01/2002 05:51:32 org.apache.struts2.config.Settings getLocale

WARNING: Settings: Could not parse struts.locale setting, substituting default VM locale

01/01/2002 05:51:32 org.apache.struts2.spring.StrutsSpringObjectFactory 

INFO: Initializing Struts-Spring integration

01/01/2002 05:51:32 org.apache.struts2.spring.StrutsSpringObjectFactory 

SEVERE: ********** FATAL ERROR STARTING UP STRUTS-SPRING INTEGRATION **********

Looks like the Spring listener was not configured for your web app!

Nothing will work until WebApplicationContextUtils returns a valid ApplicationContext.

You might need to add the following to web.xml:



org.springframework.web.context.ContextLoaderListener



01/01/2002 05:51:32 org.apache.catalina.core.StandardContext filterStart

SEVERE: Exception starting filter struts

java.lang.NullPointerException

at com.opensymphony.xwork2.spring.SpringObjectFactory.getClassInstance(SpringObjectFactory.java:189)

at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.verifyResultType(XmlConfigurationProvider.java:479)

at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.addResultTypes(XmlConfigurationProvider.java:450)

at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.addPackage(XmlConfigurationProvider.java:407)

at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.loadPackages(XmlConfigurationProvider.java:239)

at org.apache.struts2.config.StrutsXmlConfigurationProvider.loadPackages(StrutsXmlConfigurationProvider.java:111)

at com.opensymphony.xwork2.config.impl.DefaultConfiguration.reload(DefaultConfiguration.java:152)

at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:52)

at org.apache.struts2.dispatcher.Dispatcher.init_PreloadConfiguration(Dispatcher.java:395)

at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:452)

at org.apache.struts2.dispatcher.FilterDispatcher.init(FilterDispatcher.java:205)

at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:275)

at org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:397)

at org.apache.catalina.core.ApplicationFilterConfig.(ApplicationFilterConfig.java:108)

at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:3709)

at org.apache.catalina.core.StandardContext.start(StandardContext.java:4363)

at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)

at org.apache.catalina.core.StandardHost.start(StandardHost.java:719)

at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)

at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)

at org.apache.catalina.core.StandardService.start(StandardService.java:516)

at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)

at org.apache.catalina.startup.Catalina.start(Catalina.java:578)

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:413)

01/01/2002 05:51:32 org.apache.catalina.core.StandardContext start

SEVERE: Error filterStart

01/01/2002 05:51:32 org.apache.catalina.core.StandardContext start

SEVERE: Context [/Teste] startup failed due to previous errors

01/01/2002 05:51:33 org.apache.coyote.http11.Http11Protocol start

INFO: Starting Coyote HTTP/1.1 on http-8080

01/01/2002 05:51:33 org.apache.jk.common.ChannelSocket init

INFO: JK: ajp13 listening on /0.0.0.0:8009

01/01/2002 05:51:33 org.apache.jk.server.JkMain start

INFO: Jk running ID=0 time=0/94  config=null

01/01/2002 05:51:33 org.apache.catalina.startup.Catalina start

INFO: Server startup in 2500 ms

A estrutura do meu projeto é a seguinte:

3 Respostas

D

E ai jovem. Beleza?

Cara… este erro, aparentemente, tá querendo te dizer que o Spring está mal configurado. Talvez o problema não seja com o Struts2 em si. Infelizmente nunca utilizei o Struts2 com Spring, então não poderei te ajudar com isso.

Tente achar um tutorial de Struts2 sem Spring, ou algum que explique melhor a integração destes dois Frameworks.

Desculpe não poder ajudar mais. Até.

Jair_Rillo_Junior

Joca,

Te aconselho a iniciar um projeto do Struts 2, usando o Maven 2. Ele tem um archetype específicio para projetos do Struts 2 (Além do Struts 2, ele ja configura o Spring, DWR entre outros).

Dê uma pesquisada na internet que certamente vai achar material sobre o assunto

J

[b]Diego,
obrigado pela resposta. Mas o negócio é o seguinte: eu não instalei nada de Spring, eu instalei na lib do projeto somente os seguintes .jar: commons-loggin-1.0.4.jar, freemarker-2.3.8.jar, ognl-2.6.11.jar, struts2-core-2.0.14.jar, xwork-2.0.7.jar, de acordo com uma página que eu encontrei na internet.

O meu arquivo web.xml está assim:[/b]

<filter>
    <filter-name>struts</filter-name>
    <filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
</filter>

<filter-mapping>
    <filter-name>struts</filter-name>
    <url-pattern>/*</url-pattern>
</filter-mapping>

<!-- ... -->

Você tem mais alguma dica que possa me dar?
Obrigado novamente…

Criado 24 de janeiro de 2009
Ultima resposta 24 de jan. de 2009
Respostas 3
Participantes 3