Struts 2 mapear action por anotation

Estou com um problema, e não sei oque é que pode ser

Eu criei um projeto igual ao da apostila fj21 e funcinou, só que com outro nome. Então resolvi criar uma classe minha igualzinha a da apostila, só que com a action diferente e em outro pacote. Ai quando eu tento acessa ele me retorna erro 404 dizendo que não ha action mapeada.

Classe da apostila

[code]public class OlaMundoAction {

@Action(value = "olaMundoStruts", results = {
		@Result(location = "/olaMundoStruts.jsp", name = "ok") }
)
public String execute() {
	return "ok";
}

}[/code]

Minha action

[code]public class CadastroAction {

@Action(value = "cadastro", results = {
		@Result(location = "/olaMundoStruts.jsp", name = "ok") }
)
public String execute() {
	return "ok";
}

}[/code]

Oque pode ser? Oque não devo estar entendendo?

Muito Obrigado

olá amigo…

qual é a url q vc eta tentando acessar?

o struts 2 tem um plugin bem legal chamado Config Browser Plugin q é uma lib q vem junto com o struts…
adicione ela no classpath e coloque na url: http://:8080//config-browser
acho q é essa url =)

blz…

no exemplo da apostila http://localhost:8080/acol/olaMundoStruts -> funciona =D

no meu http://localhost:8080/acol/cadastro -> não funciona =/

o caminho da url não deu certo do config-browser não deu certo =/

hummm… achei a url

e ja descobri como ele funciona. Agora entendi.

ele ve o pacote que é *.action

e pega as classe mapeadas dentro dele entao como minha action não esta na .action esta na .action.cadastro, para acessa preciso fazer http://localhost:8080/acol/cadastro/cadastro

entendi agora

agora fiquei na duvida…

xml ou annotation?? vou ir levando com anotação se começar a ficar ruim e me limitar eu troco para xml.

Valew

Abss

a e verdade… XD

ele considera o pacote action como sendo o pacote default…
então se vc colocar outro pacote dentro do action este deve ser usado na hora de chamar a action…
tipo… cadastro/cadastro =) e como vc estivesse fazendo packages no xml.

a respeito de usar as annotation ou xml… bem vc consegue fazer qlq coisa com annotation…
recentemente fiz um sistema de chamado usando struts 2 com annotation e convenção…
a unica coisa q não consegui fazer com annotation foi mapear um interceptor =(
dai fiz essa parte no xml… iterceptor, stack, essas coisas…

cara não entrei muito em detalhe sobre o plugin config-browser…
bem ele te mostra tds os seus mapeamentos feitos…
os das action, dos interceptor, das exception, e ai vai…
e muito util… da um procurada no google =)

a tenho um pdf de um livro muito bom em Strtus 2… (em ingles)
se vc tiver interesse me manda um MP com seu e-mail q eu lhe passo a “copia de estudo” rss

blz t+

Entendi,

Ja mandei, muito obrigado.

Então não tem problema usar cml e convençao juntos? ele vai entender direitinho?

Vlw