pe框架傳送報文,適用於pe及vx技術
步驟:1.在action中使用傳送報文,要指定報文在router端的交易名稱
2.如果使用supe.execute(context)來傳送,不需要第一步
3.配置從網銀到router的xml報文
4.根據網銀交易名匹配到router端交易名(這裡對應的是第2步,如果用第一步的方式,可以跳過)
5.在router端配置交易,記住命名空間,交易名等要一致
6.配置報文編碼,轉換為主機的編碼(交易名對應的數字)
7.配置router到主機的報文
8.配置主機返回router的報文
9.配置router返回網銀的報文
傳送報文配置xml,以查詢卡資訊為例(cifactsqrybylhw):
1.在action中呼叫這句,就是用乙個map來裝載返回的報文內容
tohostmap.put(constants.host_transaction_code,"pquery.cifactsqrybylhw");
雙引號中的是在router端呼叫的交易名稱,前半部為命名空間(同時也是報文的名稱)
//還要使用這個來傳送
map resultmap=(map)this.issuehosttrs(context,map);
使用這種方式傳送報文,由於指定了router端的交易名稱,所以不需要在resolver.xml中配置
也可以使用super.execute(context)來傳送報文,這樣上面兩步都不用了,不過一樣要引入父類parent="basequeryaction",使用這種方式傳送報文,報文交易名必須在common包下的resolver.xml中配置(否則不知道該呼叫router端的那個交易)
2.配置從網銀到路由的報文fsegquery.cifactsqrybylhw.xml,放在當前交易包下,
config.outbound.csxml.packets
"cardno" >
"pageno"defaultvalue="0001">
格式就是fseg+報文名稱.xml
3.在resolver.xml中配置報文名稱所對應的交易id,在router端還要呼叫這個交易去發報文到前置。該xml在網銀端common包下(如果在第1步中指定了交易名稱,此步可以跳過,它其實是根據網銀交易名匹配router到主機的交易名)
"cifactsqrybylhw">pquery.cifactsqrybylhw
前面的name就是網銀交易名稱,這個一般router中的和要發報文的交易都是相同的,後面的是報文名稱,同時也是在router中的交易名稱,pquery為命名空間
4.在router包的xml內定義交易,就是上面的那個id,注意namespace和transaction要與匹配的一致
"cifactsqrybylhw" template="publicquerytemplate">
"action">cifactsqrybycardqueryaction
這裡是在router中定義的,一般查詢就是用publicquerytemplate,有操作的用publictwophasetrstemplate
5.配置從路由到前置(主機)的報文fsegpquery.cifactsqrybylhw.xml,放在router包,
config.pquery.outbound.gdrcu.packets
"card_no">"cardno" >
"page_no">"pageno" >
格式就是fseg+報文名稱.xml
6.在router端定義報文對應的介面名稱,就是你所發報文與介面的對應關係,因為主機使用的是自己的編碼,而不是網銀的編碼
"pquery.cifactsqrybylhw">11130004
7.配置前置到路由router的返回報文pquery.cifactsqrybylhw.xml,放在
rotuer端
(經過第6步的轉換,這裡自動由p11130004.xml變為pquery.cifactsqrybylhw.xml)
"parse">
"currency" alias="curreny" />
"acctstate" alias="acct_status"/>
格式就是p+報文名稱.xml
如果返回的是list,如下:
"parse">
"list" alias="list" >
"acno" alias="acct_no" />
8.配置路由router到網銀的返回報文fsegpquery.cifactsqrybylhw.xml,放在
router端config.inbound.csxml.packets
"list" >
"map">
"acno">
"acflag">
格式就是fseg+報文名稱.xml
如果返回的是map,不是list,那麼如下寫:
"acctno" >
"acname" >
pe框架傳送報文,適用於pe及vx技術
步驟:1.在action中使用傳送報文,要指定報文在router端的交易名稱
2.如果使用supe.execute(context)來傳送,不需要第一步
3.配置從網銀到router的xml報文
4.根據網銀交易名匹配到router端交易名(這裡對應的是第2步,如果用第一步的方式,可以跳過)
5.在router端配置交易,記住命名空間,交易名等要一致
6.配置報文編碼,轉換為主機的編碼(交易名對應的數字)
7.配置router到主機的報文
8.配置主機返回router的報文
9.配置router返回網銀的報文
kmp從入門到放棄
標籤 kmp 擴充套件kmp 給你兩個字串,你需要回答,b串是否是a串的子串 a串是否包含b串 a aaaaaaaaaaaaaaaaaaaaaaaaaab b aaaaaaaab 最壞狀態 o mn 一般做法 for 列舉b在a串中的起始位置 for 向後比較ab是否相等 o n m 傳說中的kmp...
beego 從入門到放棄
beego 的專案基本都是通過 bee命令來建立的,所以在建立專案之前確保你已經安裝了 bee 工具和 beego。如果你還沒有安裝,那麼請查閱 beego 的安裝 和 bee 工具的安裝 現在一切就緒我們就可以開始建立專案了,開啟終端,進入 gopath src 所在的目錄 建立乙個專案名為201...
Flutter從入門到放棄
本篇主要記錄下flutter的學習路線。一 認識flutter 可以檢視這些文章 二 dart語言 1 認識dart語言 2 學習 從2018.02開始出現dart2,屬於強型別語言。介紹位址參考 三 開始flutter 網上也有很多部落格介紹了flutter怎麼安裝,但大多介紹不全,第一次安裝難免...