2011-07-19 18 views
1

私はjsonのフォームでatocompleterを使用しています。 これは私のJSPページがある私のstruts.xmlJSONを使ったStruts2 jqueryオートコンプリート

<package name="default" extends="struts-default,json-default"> 

    <action name="jsonSample" class="com.jaisar.jsep.product.web.action.DatabaseJSON" method="getDatabaseJSONData" > 
     <result type="json"/> 
    </action> 
</package> 

の一部です:

public class DatabaseJSON extends ActionSupport { 
    private List<String> languageList; 
public String getDatabaseJSONData() { 
     languageList = new ArrayList<String>(); 
     languageList.add("Java"); 
     languageList.add("PHP"); 
     languageList.add("C#"); 
     return SUCCESS; 
    } 
// Setters and getters for languageList .. 
} 

しかし、ページがでロードされない:

<%@ taglib prefix="s" uri="/struts-tags" %> 
<%@ taglib prefix="sj" uri="/struts2-jquery-tags"%> 

<s:url id="remoteurl" action="jsonSample.action"/> 
    <sj:select 
    href="%{remoteurl}" 
    id="echo" 
    name="echo" 
    list="languageList" 
    emptyOption="true" 
    headerKey="-1" 
    headerValue="Please Select a Language"/> 

Actionクラスメソッドがありますオートコンプリート。ページには単純に選択ボックスが表示されます...どのようなソリューションですか? Plzを...私はdataType='json'属性を入れしようとするだろう...私は、サイトに事前にhttp://code.google.com/p/struts2-jquery/wiki/SelectTag#Receive_Entrys_from_a_simple_String_List

感謝を呼び...

+0

あなたはいくつかの回答を受け入れる必要があります – Rafay

+2

jsonコールが正常に終了したら、Firebugで確認してください。 – Johannes

+1

@Zemzela彼は明らかに彼が持っている行動マッピングで彼がそれを構成する限り、彼が望む任意のメソッド名を使うことができます。 'success'はデフォルトの結果名なので、明示的に宣言する必要はありません。 – doctrey

答えて

0

struts.xmlに結果名を指定していません。試してください:<result name="success" type="json">

+0

私はそれを指定...しかし、値は選択ボックスに入力されていません... firebugを使用してブラウザでjson値をチェックしました...ブラウザにurl ** http:// localhost:8090/jsep/jsonSample.action **を置くと、{"databaseJSONData": "success" "languageList":["Java"、 "PHP"、 "C#"]} ...しかし、これらのval選択ボックスには値が設定されていません....事前に感謝... – Muthu

1

を私は多くのことを参照さが、私はsilutionを見つけるcouln't sj:selectタグ。

+0

ブラウザでjson値をチェックしました。 firebug ...ブラウザにurl ** http:// localhost:8090/jsep/jsonSample.action **を置くと、{"databaseJSONData": "success"、 "languageList":["Java" "PHP"、 "C#"]} ...しかし、これらの値は選択ボックスに入力されていません....事前におかげ... – Muthu

関連する問題