• 使用BizTalk实现RosettaNet B2B So Easy


    使用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 receiptNon-Repudiation Required 也需要双方定义

    运维工具

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

    源代码提供下载

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

  • 相关阅读:
    学习FastDfs(三)
    学习FastDfs(二)
    学习FastDfs(一)
    学习ELK日志平台(五)
    学习ELK日志平台(四)
    学习ELK日志平台(二)
    学习ELK日志平台(一)
    并不对劲的CTS2019
    并不对劲的BJOI2019
    并不对劲的bzoj1095:p2056:[ZJOI2007]捉迷藏
  • 原文地址:https://www.cnblogs.com/neozhu/p/4910490.html
Copyright © 2020-2023  润新知