2014-03-01 5 views
1

나는 내가 그것을 JSON 데이터를 인쇄 <s:property value="object"/>를 작성하는 경우JSON 개체 구문 분석이

public class DataProcessor extends ActionSupport{ 

    private JSONObject object; 

    public JSONObject getObject() { 
     return object; 
    } 

    public void setObject(JSONObject object) { 
     this.object = object; 
    } 

    @Override 
    public String execute() throws Exception { 
     ....... 
     return SUCCESS; 
    } 
} 

내 XML 매핑 같은 액션 클래스는 JSP 페이지에

같다 있습니다. 내가

<s:property value="object.name"/> 

또는

<s:property value="#object.name"/> 

또는를 작성하는 경우 BT

<s:property value="${#object.name}"/> it is printing nothing. 

어떻게 JSP 페이지에서 JSON 개체를 구문 분석 할 수 있습니까?

+0

왜 json 개체를 사용하여 파싱해야합니까? –

+0

'{name : lalit, mobile : 9999999999}'와 같은 개체가 표시되며 동일한 형식으로 인쇄됩니다. 나는 이름과 모바일을 따로 인쇄하고 싶다. –

+0

'개체'는 어떤 유형입니까? 그것은'org.json.JSONObject'입니까? –

답변

1

값을 검색해야하는 JSON을 구문 분석 할 필요가 없습니다. objectorg.json.JSONObject이라고 가정하면 get 메서드를 호출하고 키를 문자열로 전달하여 값을 얻을 수 있습니다.

<s:property value="object.get('name')"/> 
0

는이 예에서와 같이 라이브러리 함수 parseJSON를 사용하여 JSON을 구문 분석 할 수

<s:textfield id="name" name="name"/> 
<s:textfield id="mobile" name="mobile"/>  
<script type="text/javascript"> 
    $(document).ready(function() { 
    var obj = $.parseJSON('<s:property value="object"/>'); 
    $("name").val(obj.name); 
    $("mobile").val(obj.mobile); 
    }); 
</script> 

JSP가 렌더링 될 때 채워 액션 빈에서 (있는 경우)의 값을 대체 할이 스크립트. 텍스트 필드는 액션 빈에 대응하여 매핑되어야합니다.

관련 문제