使用 Java 连接到 Microsoft Dynamics CRM 本地 Web 服务?

2023-11-23

是否有任何在线资源显示使用 Java 编写的客户端访问 Microsoft CRM 本地 Web 服务的基本步骤?

我应该使用哪个 Web 服务工具包?

我尝试使用 JAXB,但 WSDL 元素命名存在冲突,需要类自定义。如果我找到正确的绑定修复,我会将其发布在这里。


Microsoft Dynamics CRM 应用程序本地版本使用 Active Directory 身份验证。 尽管我从未尝试过从 Java 引用 Microsoft Dynamics CRM Web 服务,但我确信这是可行的,因为这些是标准 Web 服务,因此可以通过 SOAP 从 Java 引用,就像任何其他 Web 服务一样。

public class TestCRM {  

private static String endpointURL = "http://server:port/MSCrmServices/2007/CrmService.asmx";  
private static String userName = "username";  
private static String password = "password";  
private static String host = "server";  
private static int portport = port;  

//To make sure you are using the correct domain open ie and try to reach the service. The same domain you entered there is needed here  
private static String domain = "DOMAIN";   

private static String orgName = "THIS_IS_REQUIRED"; //this does the work....  


public static void main(String[] args) {  

    CrmServiceStub stub;  
    try {  
        stub = new CrmServiceStub(endpointURL);  
        setOptions(stub._getServiceClient().getOptions());  

        RetrieveMultipleDocument rmd = RetrieveMultipleDocument.Factory.newInstance();  
        RetrieveMultiple rm = RetrieveMultiple.Factory.newInstance();  

        QueryExpression query = QueryExpression.Factory.newInstance();  
        query.setColumnSet(AllColumns.Factory.newInstance());  
        query.setEntityName(EntityName.######.toString());  
        //query.setFilter...  

        rm.setQuery(query);  
        rmd.setRetrieveMultiple(rm);  

        //Now this is required. Without it all i got was 401s errors  
        CrmAuthenticationTokenDocument catd = CrmAuthenticationTokenDocument.Factory.newInstance();  
        CrmAuthenticationToken token = CrmAuthenticationToken.Factory.newInstance();  
        token.setAuthenticationType(0);     
        token.setOrganizationName(orgName);  
        catd.setCrmAuthenticationToken(token);  

        boolean fetchNext = true;  
        while(fetchNext){  
            RetrieveMultipleResponseDocument rmrd = stub.RetrieveMultiple(rmd,  catd, null, null);  
            RetrieveMultipleResponse rmr = rmrd.getRetrieveMultipleResponse();  
            BusinessEntityCollection bec = rmr.getRetrieveMultipleResult();  

            String pagingCookie = bec.getPagingCookie();  
            fetchNext = bec.getMoreRecords();  

            ArrayOfBusinessEntity aobe = bec.getBusinessEntities();  
            BusinessEntity[] myEntitiesAtLast = aobe.getBusinessEntityArray();  

            for(int i=0; i<myEntitiesAtLast.length; i++){  
                //cast to whatever you asked for...  
                ### myEntity = (###) myEntitiesAtLast[i];  
            }  
        }  
    }   
    catch (Exception e) {  
        e.printStackTrace();  
    }  
}  

private static void setOptions(Options options){  
    HttpTransportProperties.Authenticator auth = new HttpTransportProperties.Authenticator();  

    List authSchemes = new ArrayList();  
    authSchemes.add(HttpTransportProperties.Authenticator.NTLM);   
    auth.setAuthSchemes(authSchemes);   

    auth.setUsername(userName);  
    auth.setPassword(password);  
    auth.setHost(host);  
    auth.setPort(port);  
    auth.setDomain(domain);  
    auth.setPreemptiveAuthentication(false); //it doesnt matter...  
    options.setProperty(HTTPConstants.AUTHENTICATE, auth);  
    options.setProperty(HTTPConstants.REUSE_HTTP_CLIENT, "true"); //i think this is good.. not required though  
} 
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 Java 连接到 Microsoft Dynamics CRM 本地 Web 服务? 的相关文章

  • 日期语句之间的 JPQL SELECT [关闭]

    Closed 这个问题是无法重现或由拼写错误引起 help closed questions 目前不接受答案 我想将此 SQL 语句转换为等效的 JPQL SELECT FROM events WHERE events date BETWE
  • Mockito:如何通过模拟测试我的服务?

    我是模拟测试新手 我想测试我的服务方法CorrectionService correctPerson Long personId 实现尚未编写 但这就是它将执行的操作 CorrectionService将调用一个方法AddressDAO这将
  • 使用 LinkedList 实现下一个和上一个按钮

    这可能是一个愚蠢的问题 但我很难思考清楚 我编写了一个使用 LinkedList 来移动加载的 MIDI 乐器的方法 我想制作一个下一个和一个上一个按钮 以便每次单击该按钮时都会遍历 LinkedList 如果我硬编码itr next or
  • Spring AspectJ 在双代理接口时失败:无法生成类的 CGLIB 子类

    我正在使用Spring的
  • 如何更改javaFX中按钮的图像?

    我正在使用javaFX 我制作了一个按钮并为此设置了图像 代码是 Image playI new Image file c Users Farhad Desktop icons play2 jpg ImageView iv1 new Ima
  • 来自 dll 的 Java 调用函数

    我有这个 python 脚本导入zkemkeeperdll 并连接到考勤设备 ZKTeco 这是我正在使用的脚本 from win32com client import Dispatch zk Dispatch zkemkeeper ZKE
  • 从最终实体获取根证书和中间证书

    作为密码学的菜鸟 我每天都会偶然发现一些简单的事情 今天只是那些日子之一 我想用 bouncy castle 库验证 java 中的 smime 消息 我想我几乎已经弄清楚了 但此时的问题是 PKIXparameters 对象的构建 假设我
  • 检测并缩短字符串中的所有网址

    假设我有一条字符串消息 您应该将 file zip 上传到http google com extremelylonglink zip http google com extremelylonglink zip not https stack
  • jdbc mysql loginTimeout 不起作用

    有人可以解释一下为什么下面的程序在 3 秒后超时 因为我将其设置为在 3 秒后超时 12秒 我特意关闭了mysql服务器来测试mysql服务器无法访问的这种场景 import java sql Connection import java
  • 如何对不同的参数类型使用相同的java方法?

    我的问题 我有 2 个已定义的记录 创建对象请求 更新对象请求 必须通过实用方法进行验证 由于这两个对象具有相同的字段 因此可以对这两种类型应用相同的验证方法 现在我只是使用两种方法进行重载 但它很冗长 public record Crea
  • 如何在谷歌地图android上显示多个标记

    我想在谷歌地图android上显示带有多个标记的位置 问题是当我运行我的应用程序时 它只显示一个位置 标记 这是我的代码 public class koordinatTask extends AsyncTask
  • 在我的 Spring Boot 示例中无法打开版本 3 中的 Swagger UI

    我在 Spring Boot 示例中打开 swagger ui 时遇到问题 当我访问 localhost 8080 swagger ui 或 localhost 8080 root api name swagger ui 时出现这种错误 S
  • 尝试将 Web 服务部署到 TomEE 时出现“找不到...的 appInfo”

    我有一个非常简单的项目 用于培训目的 它是一个 RESTful Web 服务 我使用 js css 和 html 创建了一个客户端 我正在尝试将该服务部署到 TomEE 这是我尝试部署时遇到的错误 我在这里做错了什么 刚刚遇到这个问题 我曾
  • 为什么 Java 8 不允许非公共默认方法?

    让我们举个例子 public interface Testerface default public String example return Hello public class Tester implements Testerface
  • java for windows 中的文件图标叠加

    我正在尝试像 Tortoise SVN 或 Dropbox 一样在文件和文件夹上实现图标叠加 我在网上查了很多资料 但没有找到Java的解决方案 Can anyone help me with this 很抱歉确认您的担忧 但这无法在 Ja
  • 使用 AsyncTask 传递值

    我一直在努力解决这个问题 但我已经到了不知道该怎么办的地步 我想做的是使用一个类下载文件并将其解析为字符串 然后将该字符串发送到另一个类来解析 JSON 内容 所有部件都可以单独工作 并且我已经单独测试了所有部件 我只是不知道如何将值发送到
  • 包 javax.el 不存在

    我正在使用 jre6 eclipse 并导入 javax el 错误 包 javax el 不存在 javac 导入 javax el 过来 这不应该是java的一部分吗 谁能告诉我为什么会这样 谢谢 米 EL 统一表达语言 是 Java
  • 在java中为组合框分配键

    我想添加一个JComboBox在 Swing 中这很简单 但我想为组合中的每个项目分配值 我有以下代码 JComboBox jc1 new JComboBox jc1 addItem a jc1 addItem b jc1 addItem
  • 使用 CXF-RS 组件时,为什么我们使用 而不是普通的

    作为后续这个问题 https stackoverflow com questions 20598199 对于如何正确使用CXF RS组件我还是有点困惑 我很困惑为什么我们需要
  • Java中super关键字的范围和使用

    为什么无法使用 super 关键字访问父类变量 使用以下代码 输出为 feline cougar c c class Feline public String type f public Feline System out print fe

随机推荐

  • 在 Windows 中设置 stdout/stderr 文本颜色

    我尝试使用system color 24 但这并没有改变提示中的颜色 所以经过更多的谷歌搜索后我看到SetConsoleTextAttribute并编写了以下代码 这导致两者stdout and stderr两者都变成红色而不是stdout
  • 为什么这个 for 循环不处理数组的所有元素?

    给出以下脚本 bin bash asteriskFiles sip conf extensions conf for asteriskFile in asteriskFiles do backup current configuration
  • 如何与窗框碰撞,弹起球并将球限制在矩形区域内?

    嘿 我正在尝试使用 pygame 创建一个突破克隆 并且我使用了 self course 180 self course 360 为了弹起球拍的球 我正在研究向量 2 类 但我不知道如何使用它来转换我的球类 如果有人能引导我走向正确的方向
  • iOS - 照片后台上传

    我想创建一个应用程序 它将自动将相机胶卷中的新照片上传到我的网络服务 就像新的 Flickr 应用程序的自动上传功能一样 目前我正在研究如何正确设置它 我猜 iOs 7 的新后台功能可以实现这一点 但是 是否可以从后台获取启动后台传输服务
  • 支持 dropdownlist .NET MVC 中的 optgroup?

    从这个问题继续以编程方式创建下拉列表我希望我的清单有几个optgroup也列出了 目前这可能吗 我知道我需要将 selectList 传递到 dropDownList 但不知道如何将文本 值 optgroup 添加到 selectList
  • 从数组填充嵌套对象?

    我有一个问题 如何从数组创建嵌套对象 IE 我有一个以下数组 var myArr foo bar baz 并需要使其成为一个对象 例如 myObj foo bar baz 我怎样才能正确地做到这一点 Use reduce var myArr
  • 如何从下载的页面中删除所有html标签[重复]

    这个问题在这里已经有答案了 我已经使用 urlopen 下载了一个页面 如何从中删除所有 html 标签 是否有任何正则表达式可以替换所有 标签 我也可以推荐美丽汤这是一个易于使用的 html 解析器 在那里你会做类似的事情 from Be
  • Wav 音频文件压缩不起作用

    是否可以在不降低采样率的情况下压缩 wav 音频文件 我有一个 256 比特率和采样率 8000Hz 的音频文件 我只想将比特率降低到 128 64 kbs 我尝试转换为 mp3 再转换回 wav ffmpeg i 输入 wav 1 mp3
  • 电子邮件屏蔽的正则表达式

    我正在尝试编写正则表达式来掩盖电子邮件地址 下面的例子 input 电子邮件受保护 输出 j e com 我已经尝试过以下方法 但我似乎无法使其正常工作 regex lt 输出 j example en com regex lt 输出 j
  • 使用 Amazon EC2/S3 将本地数据复制到 Hadoop 集群上的 HDFS 时出现问题

    我在 Amazon EC2 上设置了一个包含 5 个节点的 Hadoop 集群 现在 当我登录主节点并提交以下命令时 bin hadoop jar
  • 为什么这不起作用?选择中的动态

    好的 我这样做 Select Range 1 20 gt Dynamic q 然后我创建滑块 Slider Dynamic q 1 20 它总是返回一个空集 为什么 Update这样做的目的是当我移动滑块时让设置发生变化 关键是 请记住 D
  • 我可以使用什么正则表达式来查找逗号分隔列表中的 Nᵗʰ 条目?

    I need a regular expression that can be used to find the Nth entry in a comma separated list 例如 假设此列表如下所示 abc def 4322 e
  • Google Chrome 在崩溃后恢复会话 cookie,如何避免?

    在 Google Chrome 上 我在 Windows 8 1 上的版本 35 上看到了这个 到目前为止我没有尝试其他版本 当浏览器崩溃时 或者您只需拔掉电源线 您将被要求恢复上一个会话当你再次打开它时 好的feature but 它也会
  • 如何解决 shell 脚本中的此错误:“read: Illegal option -t”?

    bin bash echo n Hurry up and type something gt if read t 10 response then echo Greate you made it in time else echo sorr
  • win7无法安装Cython

    所以我尝试在 ta lib 上使用 Cython 并且使用 mrjbq7 提供的包装器 非常感谢 所以我尝试在我的计算机上安装 Cython 0 19 1 然后执行python setup py install在 ta lib master
  • 从一个 NSMutableArray 中删除包含在另一个数组中的元素

    我有两个数组 A 和 B 如果 B 中存在这些元素 如何从 A 中删除这些元素 例如数组A 1 2 3 4 5 数组B 1 3 我想从数组 A 中删除 1 和 3 这样操作后数组 A 只包含 2 4 5 除了循环之外 还有其他更有效的方法吗
  • 操作邮件程序 SMTP 谷歌应用程序

    我尝试将 actionmailer 配置为通过 google apps 使用 smtp 发送 config action mailer delivery method smtp config action mailer smtp setti
  • 将字节数组中的 ASCII 转换为字符串

    我在 C 中的字符串转换似乎遇到了问题 我的应用程序收到了一个由 ASCII 字符串 每个字符一个字节 组成的字节数组 不幸的是 它的第一个位置也有一个 0 那么如何将这个字节数组转换为 C 字符串呢 以下是我尝试转换的数据示例 byte
  • 在 Excel VBA 工作簿的立即窗口中执行多行

    我是否只能在 Excel VBA 立即窗口中执行 1 个命令 有没有办法执行多个语句 使用冒号 将多个语句连接在一起的键 前任 MsgBox msgBox1 MsgBox msgBox2 将显示两个警报消息框
  • 使用 Java 连接到 Microsoft Dynamics CRM 本地 Web 服务?

    是否有任何在线资源显示使用 Java 编写的客户端访问 Microsoft CRM 本地 Web 服务的基本步骤 我应该使用哪个 Web 服务工具包 我尝试使用 JAXB 但 WSDL 元素命名存在冲突 需要类自定义 如果我找到正确的绑定修