3

個々のデータポイントを確認できる OData エンドポイントが機能しています。(たとえば、localhost/myData/person(10) には 10 人目のデータがあります。)

ただし、JayData JavaScript 内のオブジェクトの値が入力されていません。印刷するとき:

console.log(人[10]);

initData のすべてのオブジェクト パラメータは未定義です。 ここに画像の説明を入力

私の完全なスクリプトは次のとおりです。

var ctx = new WebApplication.resource_dbEntities({ name: 'oData', oDataServiceHost: 'http://localhost:8080/Resource/example.svc' });

    ctx.onReady(function() {
            ctx.person.toArray().then(function(person){
            console.log("Person[10] is:");
            console.log(person[10]);
              person.forEach(function(p) {
                   //Always prints "undefined" :(
                   console.log(p.person_lastname);
               });
          })

          .fail(function(r){
            console.log(r);
          });
        });

更新: サーバーは間違いなくデータを送信しています - Web ページのネットワーク パネルからのクリップを参照してください。 ここに画像の説明を入力

注: JayData フォーラムに追加の詳細を投稿しました。

4

2 に答える 2

1

私は問題を理解しました。Eclipse は mySQL からエンティティを自動生成し、それを persistence.xml にリンクします。person.java 内の変数 (プライベートであったとしても?!) は、initData 変数と一致しませんでした。

person.javaを開いて変更したら

@Column(name="project_id")
private int projectId;      
@Column(name="project_budget")
private int projectBudget;

@Column(name="project_client")
private String projectClient;

@Temporal(TemporalType.DATE)
@Column(name="project_enddate")
private Date projectEnddate;

@Column(name="project_ffm")
private int projectFfm;

@Column(name="project_manager")
private int projectManager;

@Column(name="project_name")
private String projectName;

@Column(name="project_number")
private String projectNumber;

@Temporal(TemporalType.DATE)
@Column(name="project_startdate")
private Date projectStartdate;

@Column(name="project_status")
private int projectStatus;

これに:

@Id
@Column(name="project_id")
private int project_id;

@Column(name="project_budget")
private int project_budget;

@Column(name="project_client")
private String project_client;

@Temporal(TemporalType.DATE)
@Column(name="project_enddate")
private Date project_enddate;

@Column(name="project_ffm")
private int project_ffm;

@Column(name="project_manager")
private int project_manager;

@Column(name="project_name")
private String project_name;

@Column(name="project_number")
private String project_number;

@Temporal(TemporalType.DATE)
@Column(name="project_startdate")
private Date project_startdate;

@Column(name="project_status")
private int project_status;

すべてが機能しました。助けてくれてありがとう。

于 2013-06-28T16:51:06.107 に答える