2012-04-30 18 views
1

返されたJSPのstruts 2アクションからメソッドにアクセスする際に問題が発生しました。私が理解から、私はこのようになりますアクションがある場合:JSPから次にJSPからstrutsアクションメソッドにアクセスする

public class HomeAction { 
    public String execute() { 
     return "SUCCESS"; 
    } 

    public String getSomething() { 
     return "somethh"; 
    } 
} 

を私は${something}を呼び出し、"somethh"が返さ得ることができる必要があります。しかし、これは正しく動作していないようです。私がこれを逃したかもしれない明白な構成はありますか?私はstruts 2、spring 3.1、およびtomcat 7を使用しています。

答えて

-1

mspc.Struts2が非常に簡単なフレームワークである理由をjsp file.ifから直接呼び出すことはできません。メソッドとクラスを構成できますstrutsconfig.xml。それをアクションでマップします。私はあなたがやろうとしているかわからないdirectly--

+0

jspから直接メソッドを呼び出すことができます!私はちょうど環境問題を修正しました、そして今、それは私が期待したように働いています。とにかくありがとう! – Mogthew

0

インスタンス変数は、あなたが方法

public class ABCAction extends ActionSupport{ 
    public String getNames(){ 

    nameslist=dao.getNamelist(); 
    retrun "success"; 
    } 
    //getters and setters for namelist 
    public setNamesList(List nameslist){ 
    this.nameslist-namelist; 

} 
} 
public List getNames(){ 
return this.nameslist; 
} 
} 

を持っている場合は、あなたのJSPでnameslistにアクセスすることができますjsp.For例に直接アクセスすることができますあなたが尋ねたことは非常に抽象的であり、あなたがしようとしているところのあなたのJSPページを表示する方が良いと思うからです。

メソッドのデフォルトを定義していない場合は、S2にどのメソッドを呼び出すかを教えてください。​​です。あなたのケースで

あなたは<s:url value="default.action"/> and <s:url value="somethh.action"/>

のような別のアクション名を設定する必要がありますが、設定ファイル(struts.xml)を使用してのいずれかを呼び出すしたいメソッドS2を教えてくれたり、ここ

<action name="default" class="tutorial.HomeAction"> 
    <result>Welcome.jsp</result> 
</action> 
<action name="somethh" class="tutorial.HomeAction" method=getSomethh> 
    <result>Welcome.jsp</result> 
</action> 

のような注釈によってできます

あなたは同じアクション名をしたいが、あなたのアクションクラスの異なるメソッドにリダイレクトしたい場合も

<s:url value="generic.action" method="getSomethh"> 
ようなあなたの <s:url>でメソッド名を設定することができます3210

上記の例では、アクションクラスのどのメソッドを呼び出すか、struts.xmlファイルでそれらを設定する必要があるタグをS2を通して通知しました

+0

私はstrutsからメソッドに直接アクセスしようとしていましたが、返されたjspです。私は自分の環境設定を台無しにしてしまった。 – Mogthew

+0

あなたは何をしようとしているのか明確ではありませんか? –

0

ストラットが動作する原因となった不思議なことに。漠然とした質問のために謝罪しなければならないと私は期待していたように働いていた。

+0

あなたの質問を編集してこれに言及するか、あなたが行った正確な変更をして回答し、これが他の人に影響を与えると思われる場合は回答を受け入れることを検討してください。他の答えは助けてくれましたか?もしそうなら、それらをアップ・ボードすることを検討してください。 –

関連する問題