【问题标题】:Updating multiple fields for an Object - Dynamics CRM 2011 using java使用 java 更新对象的多个字段 - Dynamics CRM 2011
【发布时间】:2014-02-06 08:36:01
【问题描述】:

有没有什么方法可以使用 java.lang. 更新 Dynamics CRM 2011 中一个对象的多个字段。我现在能做的就是更新一个对象的一个​​字段(ContactSet、AccountSet 等)

网址:https://xxxxxx.xxxx.xx/xxxxxx/XrmServices/2011/OrganizationData.svc/ContactSet(guid'xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx')

我做了什么?

    Map<String,Object> update = Maps.newHashMap();
    update.put("FirstName","xxxxx");
    update.put("LastName","xxxxx");
    update.put("Telephone1","xxxxxxxx");


    ObjectMapper mMapper = new ObjectMapper();

    mEntity = mMapper.writeValueAsString(update);

    String mUrl = this.url+"/"+getObject()+"(guid'"+id+"')";

    HttpPut httpPut = new HttpPut(mUrl);
    httpPut.setHeader("Content-Type", "application/json");
    httpPut.setHeader("Accept","application/json");
    httpPut.setEntity(new StringEntity(mEntity,"UTF-8"));

    HttpResponse response = this.client.execute(httpPut);

上面的代码总是给出 500 内部服务器错误。 什么有效?

    Map<String,Object> update = Maps.newHashMap();
    update.put("FirstName","xxxxx");
    mEntity = mMapper.writeValueAsString(update);

    String mUrl = this.url+"/"+getObject()+"(guid'"+id+"')"+"/FirstName";
    HttpPut httpPut = new HttpPut(mUrl);
    httpPut.setHeader("Content-Type", "application/json");
    httpPut.setHeader("Accept","application/json");
    httpPut.setEntity(new StringEntity(mEntity,"UTF-8"));

    HttpResponse response = this.client.execute(httpPut);

我认为只更新一个字段没有意义。有人可以指点如何更新多个字段吗?

【问题讨论】:

    标签: java dynamics-crm-2011 crm


    【解决方案1】:

    我建议您使用javascript and Jquery,或者如果您更喜欢java,请尝试使用微软代码Javascript example

    可以更新多个列,只需检查您的代码语法。

    【讨论】:

    • 使用 HttpPost 和这一行 - req.setRequestHeader("X-HTTP-Method", "MERGE");为我工作。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-01-21
    • 1970-01-01
    • 2018-09-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多