[RESOLVIDO] Não consigo configurar struts  XML
Índice dos Fóruns » Java Enterprise Edition (Java EE)
Autor Mensagem
leo_lvieira
Thread.start()
[Avatar]

Membro desde: 21/01/2011 15:01:26
Mensagens: 31
Offline

Estou tendo esse problema também, vou tentar fazer o que nosso amigo criador do tópico fez e se conseguir arrumar repasso o que eu fiz aqui depois..

http://www.tecnologiasmoveis.com.br - Android, iOS e o melhor das Tecnologias Mobile! Visite!
[MSN]
leo_lvieira
Thread.start()
[Avatar]

Membro desde: 21/01/2011 15:01:26
Mensagens: 31
Offline

Pelo que vi, é necessário importar as seguintes jars tb, na nova versao 2.2.3

commons-lang-2.5.jar
asm-3.1.jar

This message was edited 1 time. Last update was at 16/08/2011 14:59:27


http://www.tecnologiasmoveis.com.br - Android, iOS e o melhor das Tecnologias Mobile! Visite!
[MSN]
leo_lvieira
Thread.start()
[Avatar]

Membro desde: 21/01/2011 15:01:26
Mensagens: 31
Offline

bom.. consegui agora..usando o metodo de convencoes do Struts 2 (achei uma maneira um tanto quanto arriscada, ja que é muito propensa a erros).

web.xml ficou assim

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlnssi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
<display-name>fj21-tarefas</display-name>

<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>

<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
<welcome-file>default.html</welcome-file>
<welcome-file>default.htm</welcome-file>
<welcome-file>default.jsp</welcome-file>
</welcome-file-list>
</web-app>


classe action.OlaMundoAction (tem que criar um pacote action, muito importante) ficou assim

package action;

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




public class OlaMundoAction
{
@Action(value = "olaMundoStruts", results = { //value eh o parametro recebido
@Result(location = "/WEB-INF/content/OlaMundoStruts.jsp", name = "ok") }
)
public String execute()
{
System.out.println("passou aqui execute do OlaMundoAction");
return "ok";

}

}
obs: Nao sei se está certo colocar essa linha assim: @Result(location = "/WEB-INF/content/OlaMundoStruts.jsp", name = "ok") } mas foi a unica maneira que funcionou


OlaMundoStruts.jsp (necessario criar uma pasta content dentro do WEB-INF e colocar la dentro) ficou assim:

<%@ 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>
Ola mundo, usando struts2
</body>
</html>

http://www.tecnologiasmoveis.com.br - Android, iOS e o melhor das Tecnologias Mobile! Visite!
[MSN]
Daniel B. Arana
What is classpath?

Membro desde: 12/12/2011 14:14:12
Mensagens: 5
Offline

Olá,

Fazendo o exercício "11.6 - Exercícios: Configurando o Struts 2 e testando a configuração" da página 113 da apostila "caelum-java-web-fj21" em 05/01/2012,
basta seguir os passos corretamente, ignorando o passo 1.d de importar o modelo de tarefas e o DAO, pois não precisa para fazer esse exercício funcionar.

A classe, o Action e o Result podem ficar exatamente assim:
@Action(value = "olaMundoStruts", results = {
@Result(location = "olaMundoStruts.jsp", name = "ok") }
)

sem precisar da barra antes do arquivo .jsp e sem precisar dizer o caminho.

tb não foi preciso criar o arquivo struts.xml dentro do src

Depois de terminar, copie os .jars para dentro do WEB-INF/lib, na base do ctrl+c e ctrl+v mesmo
-commons-fileupload-1.2.1.jar
-commons-io-1.3.2.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
-xwork-core-2.1.6.jar
sem precisar no Eclipse utilizar o "Add to Build Path"
pq automaticamente irá para Java Resources -> Libraries -> Web Apps Libraries (dê uma checada!)

Somente funcionou quando eu fui exatamente usar a versão struts-2.1.8.1
Pode baixar em http://archive.apache.org/dist/struts/library/
Acredito que outras versões tb devam funcionar.


Baixando, neste momento, a versão struts-2.3.1, as versões dos .jars são as seguintes:
-commons-fileupload-1.2.2.jar
-commons-io-2.0.1.jar
-freemarker-2.3.18.jar
-ognl-3.0.3.jar
-struts2-convention-plugin-2.3.1.jar
-struts2-core-2.3.1.jar
-xwork-core-2.3.1.jar
então, com esses .jars deram o erro 404.

Não sei pq do errro
Algum nova configuração para esses novos .jars, mas que com certeza pode ser resolvido fácil.
- testei criando o struts.xml, mas continuou sem funcionar.
Alguém sabe?


Abraço!

diogofabri
JavaBaby
[Avatar]

Membro desde: 30/05/2008 22:59:48
Mensagens: 80
Offline

Opa, tudo bem?
Baseado na apostila FJ-21 é importante:

1 - Para utilizar o Struts 2.3.1.1 ou 2.3.1.2 é necessário conter as bibliotecas da imagem em anexo.

2 - Após isso é necessário verificar a estrutura de pastas: WebContent / WEB-INF / content / olaMundoStruts.jsp

3 - E acessar a URL descrita: http://localhost:8080/fj21-tarefas/olaMundoStruts
OBS: Ao executar o servidor ele não redirecionará direto para essa URL, exibirá a mensagem ERRO 404. É normal nessa parte da apostila.

Acredito que posteriormente isso irá melhorar ( Tomara, ainda estou lendo! hehehe....)

Mas é isso aí
Abs
[Thumb - caelum_fj21_struts3.2.1.png]
 Nome do arquivo caelum_fj21_struts3.2.1.png [Disk] Download
 Descrição
 Tamanho 151 Kbytes
 Baixado:  22 vez(es)

[WWW] [MSN]
Daniel B. Arana
What is classpath?

Membro desde: 12/12/2011 14:14:12
Mensagens: 5
Offline

Não entendi.
Essa imagem ai em anexo, é um print screen seu?
Afinal, funcionou ou não funcionou o olaMundoStruts neste primeiro exercício da apostila relacionado ao Struts 2, vc fazendo ai?


Testei aqui com os .jars que vc falou, agora da versão struts 2.3.1.2 e funcionou blz:
asm-3.3.jar
asm-commons-3.3.jar
asm-tree-3.3.jar
commons-fileupload-1.2.2.jar
commons-io-2.0.1.jar
commons-lang-2-5.jar
commons-logging-1.1.1.jar
commons-logging-api-1.1.jar
freemarker-2.3.18.jar
javassist-3.11.0.GA.jar
ognl-3.0.4.jar
struts2-convention-plug-2.3.1.2.jar
struts2-core-2.3.1.2.jar
xwork-core-2.3.1.2.jar

Mas usando apenas os .jars dessa mesma versão, indicados pela apostila, permanece o erro 404.


Abraço,



diogofabri
JavaBaby
[Avatar]

Membro desde: 30/05/2008 22:59:48
Mensagens: 80
Offline

O PrintScreen demonstra os .JAR's que devem ser utilizados no projeto.
E sim, é da minha aplicação rodando. =)

Abs

[WWW] [MSN]
drsmachado
GUJ Expert

Membro desde: 25/09/2010 12:54:06
Mensagens: 3986
Localização: Curitiba / São José dos Pinhais - PR
Offline

O que acontece é que o Struts mudou muito a estrutura dos jars da versão da apostila (2.0.8 se não me engano) para a 2.2 e superiores (a atual é 2.3.1.2).
Novos jars precisam ser incluídos, como os asm:
asm-3.3.jar
asm-commons-3.3.jar
asm-tree-3.3.jar

Por isso, sempre que for criar um projeto, perceba que versão o framework está e quais requisitos ele pede.

Rumo aos 4000
"Os homens de verdade assumem suas responsabilidades e culpas. Esquivar-se e dar desculpas é atitude dos tolos, que preferem não se comprometer".

Lugar de perguntar é no fórum!
Não respondo via MP
Não respondo por Email
Não respondo por IM
 
Índice dos Fóruns » Java Enterprise Edition (Java EE)
Ir para:   
Powered by JForum 2.1.8 © JForum Team