2015-12-23 1 views
1

Моя цель - отображать значения в виде списка из таблицы во всплывающую панель модели на странице JSP.

действие

public class IcdAction extends ActionSupport { 

    private List<Icd10> icdCodes; 

    public String execute() throws MalformedURLException, JsonProcessingException { 
     SomeProcess ap = new SomeProcess(); 
     icdCodes = ap.getList(); 
     return SUCCESS;  
    } 
} 

JS

var myApp = angular.module('myApp', []); 

myApp.controller('MainCtrl', function ($scope, $http) { 

    $http.get('IcdCodesAction') 
    .success(function(response){ 
     $scope.icdcodes = response; 
    }); 
}); 

struts.xml

<action name="IcdCodesAction" class="com.emr.action.IcdAction" >  
    <result type="json"> 
    </result> 
</action> 

В файле JSP я использую ng-repeat на icdcodes.

Я новичок в AngularJS. Я не могу понять, где проблема, которая препятствует отображению списка.

Если я использую данные жесткого кодирования json для $scopes.icdcodes, тогда он работает нормально.

+1

Открыть DevTools и проверить, что сервер отвечает. – dfsq

+1

Проверьте, вызван ли ваш метод, если он затем распечатает ответ и посмотрит, что внутри. –

+1

Ugh, ICD10. Однако некоторые веселые коды. –

ответ

0

Результат json обрабатывается struts2-json-plugin, что serializes the whole Action.

Тогда вы можете:

  1. читать только нужный объект из сериализованных действий:

    $http.get('IcdCodesAction') 
    .success(function(response){ 
        console.log("this is the serialzied action -> " + response); 
        console.log("this is what I want: " + response.icdCodes); 
        $scope.icdcodes = response.icdCodes; 
    }); 
    

    ИЛИ

  2. использовать атрибут json результата root указать единичный элемент для сериализации:

    <action name="IcdCodesAction" class="com.emr.action.IcdAction" >  
        <result type="json"> 
         <param name="root">icdCodes</param> 
        </result> 
    </action> 
    
+0

это серийное действие -> [object Object] icdcodeangular.js: 9 это то, что я хочу: undefined, это то, что я получаю на консоли. Я что-то упустил в классе действий? –

+0

Можете ли вы запустить $ http.get из консоли devTools вашего браузера и открыть возвращаемый объект [object Object]? Что внутри ? –

+0

[{"addedBy": null, "addedOn": null, "code": "a0", "deleted": null, "description": "first icd"}] –

Смежные вопросы