使用BizTalk实现RosettaNet B2B So Easy

最近完成了一个vmi-hub的B2B项目,使用Rosettanet 2.0的标准与一家品牌商,OEM,供应商实现B2B。一共交换4个报文,4B2,3B2,4B2 POD,4C1,说白了就是收发存这些数据;

项目环境

BizTalk 2009 Accelerator for RosettaNet,并没有使用最新的BizTalk版本因为客户已经在使用了,所以就在现有的环境下进行。

下面说一下如何配置RosettaNet

  1. 交换证书

RosettaNet B2B中证书的用途和导入就不在这里详细说了,建议服务器端证书(IIS的SSL证书)和解密/验签的使用同一本证书

  1. 配置partner

配置Partner/Home Organization,这部分配置也非常简介,关键是Name和GBI 两个栏位填写正确就可以了

  1. 配置Process Configuration

定义每个pip的处理规则。以下我们用需要了3b2,4B2,4C1,0A1

每个pip代码都是有标准的,第一次做项目的时候你可能不知道如何填写

以上内容都可以通过https://www.rosettanet.org/RosettaNet-Standards/Standards-Library/PIP-Directory 可以查到,都是标准定义

  1. 配置Agreement

OA1 agreement的做作用是当处理这个pip流程时如果错误就会返回给对方一个0A1报文

Home role 如果选择Initiator表示做为发送方,Responder表示接收方

Ports 都填写对方的URL

其它的基本默认就可以了

以上配置还是非常简单的

流程如何调用RosettaNet API

在流程中只需要执行SubmitRNIF.SubmitMessage这个方法就可以了,但是在执行这个方法前必须先执行以下代码,在XML字符串的头部加上已下定义,应为Rosettanet的报文是通过dtd验证的,所以必须要加

RosettaNet Troubleshooting

  1. UNP.SCON.VALERR:A failure occurred while validating the service content.

Error Number:2005

Description:A failure occurred while validating the service content.

验证Playload内容是否和dtd的定义一致,RosettaNet 加速器是严格的执行XML Schema验证只要有一个节点不符合就会报以上错误

  1. UNP.SHDR.VALERR : A failure occurred while validating the service header.

请检查Process Configuration配置和消息的playload/serviceHeade 是否一致

  1. 400 Bad Request OR Time out

双方检查证书是否导入正确,特别是对于自发布的证书,对方需要导入根证书到受信任的目录下,如果对方是linux或其他OS,则需要根据相应的操作

  1. Error code:UNP.MESG.DCRYPTERR

检查配置 Is Persistent Confidentiality Required 一般选None就可以了,不排除对方会选Palyload

还有一种情况是 acknowledgement of receipt\Non-Repudiation Required 也需要双方定义

运维工具

测试阶段免不了报文重发,做了一个报文重发的工具,可以选择发送错误报文再次重发,在原来LOB Application的源代码基础上加了一个选择发送失败的报文再次重发

源代码提供下载

希望对初次使用BizTalk做Rosettanet B2B 项目的能提供一些帮助,当然有问题也可以留言哦

使用BizTalk实现RosettaNet B2B So Easy的更多相关文章

  1. BizTalk增强型RosettaNet跟踪报告

      BizTalk 的数据报表能力一直是比较弱的,好在Rosettanet 支持使用BAM 跟踪功能来跟踪各PIP消息状态.增强的跟踪功能能跟踪流程为消息.错误和事件.不可否认性的数据.可以根据跟踪的 ...

  2. BizTalk开发小技巧

    BizTalk开发小技巧 随笔分类 - Biztalk Biztalk 使用BizTalk实现RosettaNet B2B So Easy 摘要: 使用BizTalk实现RosettaNet B2B ...

  3. BizTalk 2010/2013 EDI B2B

    BizTalk 2010/2013 EDI B2B项目实践(1)   BizTalk 2010/2013 EDI B2B项目实践(1) BizTalk开发标准EDI B2B是件非常容易的事情,但对于初 ...

  4. BizTalk 2016 配置 RosettaNet遇到的坑

    本文只针对已经安装好BizTalk 2016 需要在安装RosettaNet加速器的伙伴. IIS配置 权限问题 错误信息 Failed to get IIS metabase property. E ...

  5. 重置BizTalk RosettaNet

    RosettaNet如果出现问题,可以进行重新配置安装,不过重置过程稍微有点麻烦.步骤如下: 注意:执行如下步骤前请做全部备份工作,如BTARN文件夹,自主开发的BTARN应用程序源码.MSI及Bin ...

  6. BizTalk RosettaNet 配置导入与导出

    更多内容请查看:BizTalk动手实验系列目录                             BizTalk 开发系列 BizTalk 培训/项目开发/技术支持请联系:Email:cbcye ...

  7. BizTalk RosettaNet 开发笔记

    RNIF BAM Tracking Error  解决办法:  503: Service Unavailable   解决办法:IIS 应用程序池运行账户用户名或密码错误,用户名不能是doma ...

  8. BizTalk RosettaNet解决方案搭建

    contoso为证书颁发机构 分别在两台服务器中配置hosts 192.168.199.160 fabrikam 192.168.199.225 contoso 安装CA 控制面板,添加删除程序 打开 ...

  9. BizTalk RosettaNet解决方案之Loopback

    本教程使用 BizTalk Accelerator for RosettaNet (BTARN) 在一台计算机上模拟本组织与合作伙伴组织之间的流程实施情况. 创建本组织 “BizTalk <版本 ...

随机推荐

  1. python_day12_html

    目录: 简单web的服务器代码 html简介 html常用标签 一.简单web的服务器代码 1.简单python服务器代码: import socket def main(): sock = sock ...

  2. poj3130 (半平面交

    题意:判断是否存在内核. 半平面交存板子. /* gyt Live up to every day */ #include<cstdio> #include<cmath> #i ...

  3. OpenCV2.4.10 + VS2010开发环境配置

    原文转载自:qinyang8513 一.开发环境 1.操作系统:Windows 7(64位) 2.编程环境:Microsoft Visual Studio 2010 3.OpenCV版本:2.4.10 ...

  4. mybatis中使用常量

    mybatis的mapper文件中项要使用常量的话${@类的全称路劲@常量名称}

  5. 论如何优雅地拿下PHPCMS

    作者:J0o1ey 原文来自:论如何优雅地拿下PHPCMS 一.PHPCM       PHP是国内领先的网站内容管理系统,同时也是一个开源的PHP开发框架,采用PHP5+MYSQL进行开发,拥有非常 ...

  6. 开源性能测试工具Locust使用篇(一)

    1. 环境准备 安装python3.6 ,安装步骤略 pip install locust 安装完成后使用locust -V检查 2.locust使用,先编辑一个简单的load_test.py的脚本 ...

  7. Spring controller 中接收JSON参数失败

    如果方法中的参数都是JSON类型,则在方法参数前面添加  @RequestBody 注解: public Boolean serverPath(@RequestBody ServerPathReq r ...

  8. 昕有灵犀-xyFS私有文件云存储OSS服务

    本工程为本人开发的开源项目,地址: https://gitee.com/475660/xyFS 介绍: 一站式企业私有文件服务.针对软件开发时提供的文件存储系统,对文件上传.下载.分类.分组.审计.统 ...

  9. web.xml简介

    用于配置Web应用的相关信息,如:监听器(listener).过滤器(filter). Servlet.相关参数.会话超时时间.安全验证方式.错误页面等.例如: Servlet 3中的异步处理指的是什 ...

  10. 终于等到你!阿里正式向 Apache Flink 贡献 Blink 源码

    摘要: 如同我们去年12月在 Flink Forward China 峰会所约,阿里巴巴内部 Flink 版本 Blink 将于 2019 年 1 月底正式开源.今天,我们终于等到了这一刻. 阿里妹导 ...