每当我尝试通过A2A提交给IRS时,我都会收到TPE 1105。我浏览过肥皂的例子,并多次研究过wsd,并且无法弄清楚是什么原因导致了这个问题。
如果您有任何见解,我将非常感激最终将1105投入使用。
POST [AATS_URL] HTTP/1.1
Content-Encoding: gzip
Accept-Encoding: gzip,deflate
Content-Type: multipart/related; type="application/xop+xml"; start="<root_part>"; boundary="--=_part_85c4167d-966b-4dfd-b6f9-c7a5aa410517"; start-info="text/xml"
SOAPAction: "BulkRequestTransmitter"
MIME-Version: 1.0
Accept: text/xml,multipart/related
Expect: 100-continue
Cache-Control: no-cache
Pragma: no-cache
User-Agent: Java/1.8.0_111
Host: la.www4.irs.gov
Connection: keep-alive
Content-Length: 16299
----=_part_85c4167d-966b-4dfd-b6f9-c7a5aa410517
Content-Type: application/xop+xml; charset=UTF-8; type="text/xml"
Content-Transfer-Encoding: 8bit
Content-Id: <root_part>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<soapenv:Envelope xmlns:air="urn:us:gov:treasury:irs:ext:aca:air:ty18" xmlns:com="urn:us:gov:treasury:irs:common" xmlns:hdr="urn:us:gov:treasury:irs:msg:acabusinessheader" xmlns:oas1="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:req="urn:us:gov:treasury:irs:msg:irsacabulkrequesttransmitter" xmlns:sec="urn:us:gov:treasury:irs:msg:acasecurityheader" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Header xmlns:wsa="http://www.w3.org/2005/08/addressing">
<wse:Security xmlns:wse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" Id="SH-3f88e9e4-c4ea-4473-ad04-0b567e2a4bf7">
<ds:Signature xmlns:ds="http://www.w3.org/2000/09/xmldsig#" Id="SIG-3f88e9e4-c4ea-4473-ad04-0b567e2a4bf7">
<ds:SignedInfo>
<ds:CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#WithComments"/>
<ds:SignatureMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#rsa-sha256"/>
<ds:Reference URI="#TS-3f88e9e4-c4ea-4473-ad04-0b567e2a4bf7">
<ds:Transforms>
<ds:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#WithComments">
<ds:InclusiveNamespaces xmlns:ds="http://www.w3.org/2001/10/xml-exc-c14n#" PrefixList="wse wsa osa1 soapenv air com hdr sec req"/>
</ds:Transform>
</ds:Transforms>
<ds:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"/>
<ds:DigestValue>FqYS/pHdN05mKKccxqM4jmEwJNRR+ikRPB7HuyvbGQY=</ds:DigestValue>
</ds:Reference>
<ds:Reference URI="#MH-3f88e9e4-c4ea-4473-ad04-0b567e2a4bf7">
<ds:Transforms>
<ds:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#">
<ds:InclusiveNamespaces xmlns:ds="http://www.w3.org/2001/10/xml-exc-c14n#" PrefixList="wse wsa osa1 soapenv com hdr sec req"/>
</ds:Transform>
</ds:Transforms>
<ds:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"/>
<ds:DigestValue>qlWuAbD2PwDmvK7/KzU56ZWsKhBH2PYW/v2eW/30/4E=</ds:DigestValue>
</ds:Reference>
<ds:Reference URI="#BH-3f88e9e4-c4ea-4473-ad04-0b567e2a4bf7">
<ds:Transforms>
<ds:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#">
<ds:InclusiveNamespaces xmlns:ds="http://www.w3.org/2001/10/xml-exc-c14n#" PrefixList="wse wsa osa1 soapenv air com sec req"/>
</ds:Transform>
</ds:Transforms>
<ds:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"/>
<ds:DigestValue>E2cw4uavSk8RGQeewG04q3tcBRwM6dnMQmSctdJl4k8=</ds:DigestValue>
</ds:Reference>
</ds:SignedInfo>
<ds:SignatureValue>[SIGNATURE_VALUE]</ds:SignatureValue>
<ds:KeyInfo Id="KI-3f88e9e4-c4ea-4473-ad04-0b567e2a4bf7">
<wse:SecurityTokenReference wsu:Id="STR-3f88e9e4-c4ea-4473-ad04-0b567e2a4bf7">
<wse:KeyIdentifier EncodingType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary" ValueType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#X509v3">[CERT_VALUE]</wse:KeyIdentifier>
</wse:SecurityTokenReference>
</ds:KeyInfo>
</ds:Signature>
<wsu:Timestamp wsu:Id="TS-3f88e9e4-c4ea-4473-ad04-0b567e2a4bf7">
<wsu:Created>2019-02-15T15:41:01Z</wsu:Created>
<wsu:Expires>2019-02-15T15:51:01Z</wsu:Expires>
</wsu:Timestamp>
</wse:Security>
<air:ACATransmitterManifestReqDtl xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" wsu:Id="MH-3f88e9e4-c4ea-4473-ad04-0b567e2a4bf7">
<air:PaymentYr>2018</air:PaymentYr>
<air:PriorYearDataInd>0</air:PriorYearDataInd>
<com:EIN>[REDACTED]</com:EIN>
<air:TransmissionTypeCd>O</air:TransmissionTypeCd>
<air:TestFileCd>T</air:TestFileCd>
<air:TransmitterForeignEntityInd>0</air:TransmitterForeignEntityInd>
<air:TransmitterNameGrp>
<air:BusinessNameLine1Txt>[REDACTED]</air:BusinessNameLine1Txt>
</air:TransmitterNameGrp>
<air:CompanyInformationGrp>
<air:CompanyNm>[REDACTED]</air:CompanyNm>
<air:MailingAddressGrp>
<air:USAddressGrp>
<air:AddressLine1Txt>[REDACTED]</air:AddressLine1Txt>
<com:CityNm>[REDACTED]</com:CityNm>
<air:USStateCd>[REDACTED]</air:USStateCd>
<com:USZIPCd>[REDACTED]</com:USZIPCd>
</air:USAddressGrp>
</air:MailingAddressGrp>
<air:ContactNameGrp>
<air:PersonFirstNm>[REDACTED]</air:PersonFirstNm>
<air:PersonMiddleNm>[REDACTED]</air:PersonMiddleNm>
<air:PersonLastNm>[REDACTED]</air:PersonLastNm>
</air:ContactNameGrp>
<air:ContactPhoneNum>[REDACTED]</air:ContactPhoneNum>
</air:CompanyInformationGrp>
<air:VendorInformationGrp>
<air:VendorCd>I</air:VendorCd>
<air:ContactNameGrp>
<air:PersonFirstNm>[REDACTED]</air:PersonFirstNm>
<air:PersonMiddleNm>[REDACTED]</air:PersonMiddleNm>
<air:PersonLastNm>[REDACTED]</air:PersonLastNm>
</air:ContactNameGrp>
<air:ContactPhoneNum>[REDACTED]</air:ContactPhoneNum>
</air:VendorInformationGrp>
<air:TotalPayeeRecordCnt>2</air:TotalPayeeRecordCnt>
<air:TotalPayerRecordCnt>1</air:TotalPayerRecordCnt>
<air:SoftwareId>[REDACTED]</air:SoftwareId>
<air:FormTypeCd>1094/1095B</air:FormTypeCd>
<com:BinaryFormatCd>application/xml</com:BinaryFormatCd>
<com:ChecksumAugmentationNum>25fbebd1143d8aa935a445db998eb374761113af8b17d67b3a95af9ad73e17bc</com:ChecksumAugmentationNum>
<com:AttachmentByteSizeNum>7245</com:AttachmentByteSizeNum>
<air:DocumentSystemFileNm>1094B_Request_[TCC]_20190215T154101026Z.xml</air:DocumentSystemFileNm>
</air:ACATransmitterManifestReqDtl>
<hdr:ACABusinessHeader xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" wsu:Id="BH-3f88e9e4-c4ea-4473-ad04-0b567e2a4bf7">
<air:UniqueTransmissionId>3f88e9e4-c4ea-4473-ad04-0b567e2a4bf7:SYS12:[TCC]::T</air:UniqueTransmissionId>
<com:Timestamp>2019-02-15T15:41:01Z</com:Timestamp>
</hdr:ACABusinessHeader>
<sec:ACASecurityHeader>
<hdr:UserId>[REDACTED]</hdr:UserId>
</sec:ACASecurityHeader>
<wsa:Action>BulkRequestTransmitterService</wsa:Action>
</soapenv:Header>
<soapenv:Body>
<req:ACABulkRequestTransmitter version="1.0">
<com:BulkExchangeFile>
<xop:Include xmlns:xop="http://www.w3.org/2004/08/xop/include" href="cid:1094B_Request_[TCC]_20190215T154101026Z.xml"/>
</com:BulkExchangeFile>
</req:ACABulkRequestTransmitter>
</soapenv:Body>
</soapenv:Envelope>
----=_part_85c4167d-966b-4dfd-b6f9-c7a5aa410517
Content-Type: application/xml
Content-Transfer-Encoding: 7bit
Content-Id: <1094B_Request_[TCC]_20190215T154101026Z.xml>
Content-Disposition: attachment; filename="1094B_Request_[TCC]_20190215T154101026Z.xml"
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<msg:Form109495BTransmittalUpstream xmlns:air="urn:us:gov:treasury:irs:ext:aca:air:ty18" xmlns:com="urn:us:gov:treasury:irs:common" xmlns:msg="urn:us:gov:treasury:irs:msg:form1094-1095Btransmitterupstreammessage" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:us:gov:treasury:irs:msg:form1094-1095Btransmitterupstreammessage ../MSG/IRS-Form1094-1095BTransmitterUpstreamMessage.xsd">
[REMOVED TO SAVE SPACE]
</msg:Form109495BTransmittalUpstream>
----=_part_85c4167d-966b-4dfd-b6f9-c7a5aa410517--
我们正在使用Java中的核心org.w3c.dom文档库以及用于签名和验证的java xml dsig库,手动生成这些肥皂信封。
编辑-我设法通过了1105,现在遇到了1122“ WS安全标题错误”。我已经阅读了许多文档,试图验证我所能做的一切,但仍在努力。对我来说有一些未知数-
我正在使用Java dsig库在下面的代码中创建我的Signature元素。
答案 0 :(得分:2)
向我展示的第一件事是UserId的名称空间不同于我当前使用的名称空间。似乎您正在使用acabusinessheader
的命名空间,当它应为common
命名空间时,将其更改为我在下面更改的名称至少会使用正确的命名空间来使用该标记。
<sec:ACASecurityHeader>
<com:UserId>[REDACTED]</com:UserId>
</sec:ACASecurityHeader>
答案 1 :(得分:1)
好的,所以这对我来说有点缺乏对技术的理解,也缺乏对IRS文档的模糊性。接收TPE 1105的传输失败的问题是由于在将数据写入连接时使用Java中的转换器“缩进”了xml。这导致肥皂消息无法识别为MIME类型消息。希望这可以帮助某人。
编辑-所以我遇到的第二个问题是1122,这是因为org.w3.dom文档是1级文档,而Java是2级文档。与Java dsig库一起使用时,此XML签名不正确(我相信)。一旦我将代码升级为使用2级文档,一切就可以正常工作。希望有人会发现它有用,因为它可以节省我很多时间。