问题标签 [irs]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - 通过 SOAP HttpWebRequest 发送附件
我正在尝试通过HttpWebRequest
控制台应用程序中的 a 发送附件。经过几天的搜索和搜索互联网以获得一些可以理解的帮助后,我想出了我认为这个网站的一个不错的解决方案
虽然我认为我已经正确完成了所有操作,但我收到以下错误:
多部分流在遇到终止边界之前结束。
问题:
我希望得到一些关于multipart
我收到的错误的帮助/指导,以及附加byte[]
XML 文档的实际内容的帮助。
要求:
- 需要附加的数据文件是一个 XML 文件,应该是
MTOM Attachment
. 为了做到这一点Mtom
,我的理解是我需要确保元素的messageEncoding
属性应该有一个值,并且这将被编码。<binding>
app.config
"Mtom"
- 基于业务需求(其中严格),我需要发送
byte[]
文件,而不仅仅是内容本身。
网络请求方法
提交请求的方法
基于我的这篇文章,我相信我正在HttpWebRequest
适当地使用GZip
.
用于将 MIME 信息和附件写入 Stream 的方法
Soap Body Snippet Element
通过使用Fiddler
,我可以看到请求的实际样子。在我看来,附件实际上是作为 XML 附加到请求中的,而不是(我认为的) a byte[]
.
在这之后应该是byte[]
附件的。目前,正在显示完整的 XML 文档。
xml - 向 IRS ACA A2A BulkRequestTransmitter Web 服务发送请求
我正在尝试向 IRS 的 BulkRequestTransmitter 服务发送请求。我正在使用 C# 手动构建消息(不是 WCF,我只是在创建所有 XML)。我构建的 XML 是有效的,并且我可以使用 X509 证书对其进行签名(因此我已经过了许多人为这项服务而苦苦挣扎的 WS-Security 错误这一点)。我还可以对传出请求应用 gzip 压缩,据我所知,我正确附加了 BulkExchangeFile。在处理此问题时,我偶尔会看到错误消息告诉我确保消息是 MTOM 编码的,但据我所知,我已经应用了适当的标题和分隔符,我目前收到的错误消息是:
我的完整(未压缩)请求的编辑版本如下。谁能确定这里缺少什么?或者如果你有一个工作请求的例子,你能提供吗?
c# - IRS-A2A:WS 安全标头无效
我一直在使用服务引用(代理客户端)并SOAP XML
手动创建。我将这些WSDL
文件作为服务引用导入到我的项目中。我使用这些引用提供的对象来创建填充我的请求。
我的代码库是使用 Visual Studio 2013 的 C#。
我的服务参考解决方案遇到错误:
“消息中的 WS 安全标头无效。请查看位于https://www.irs.gov/for-Tax-Pros/Software-Developers/的 AIR 提交组成和参考指南第 5 节中概述的传输说明Information-Returns/Affordable-Care-Act-Information-Return-AIR-Program,更正任何问题,然后重试。”
- 其他人如何通过 Web 服务成功地将安全性传递给 IRS?
- 关于如何使用代理客户端解决我面临的问题的任何想法?代理客户端?
更新
我已经放弃了使用WSDL
文件作为服务参考的方法,并且正在手动创建SOAP
传输请求。
soap - IRS ACA 1095B BulkRequestTransmitter:无效的 WS 安全标头 - SOAP UI
我正在尝试通过 SOAP UI 调用 IRS ACA 1095 B Ws。我在 SOAP UI 中配置了 Keystore,导入时显示 OK。我已经签署了引用 IRS Doc、ACABusinessHeader、ACATransmitterManifestReqDtl 和 Timestamp 的 3 个元素。我已经尝试过使用和不使用 Gzip/Wsa Header/Attachment/MTOM 仍然是一个没有任何文件附件的简单 SOAP 请求:
消息中的 WS 安全标头无效。请查看位于https://www.irs.gov/for-Tax-Pros/Software-Developers/Information-Returns/Affordable-Care-Act-Information的 AIR 提交组成和参考指南第 5 节中概述的传输说明-Return-AIR-Program,更正任何问题,然后重试。
错误代码:TPE 1122。
我附上了完整的 SOAP Ui 请求消息。
任何形式的帮助表示赞赏。
--->
web-services - 无效的 WS 安全标头 - 使用 IBM 集成 BUS/消息代理的 IRS ACA SOAP 请求
我正在尝试使用 IBM 集成总线向 IRS 的 ACA A2A Web 服务发送 SOAP 请求。
我尝试发布的请求与 IRS 指南中提到的标准相匹配,但我收到了“TPE1122”SOAP 错误消息。是否有人使用 IIB 或消息代理将 ACA 请求发布到 IRS?
我使用策略集和策略集绑定来生成签名。
c# - IRS ACA 提交 - 错误 TPE1122,消息中的 WS 安全标头无效
我们正在尝试使用他们的 A2A 渠道向 IRS 政府网站提交 ACA 表格。我们能够使用 X509 和 SHA1 形成 XML 和所需的加密。
在向 IRS 网站发送 XML 时,我们收到错误,The WS Security Header in the message is invalid. Please review the transmission instructions outlined in Section 5 of the AIR Submission Composition and Reference Guide located at https://www.irs.gov/for-Tax-Pros/Software-Developers/Information-Returns/Affordable-Care-Act-Information-Return-AIR-Program, correct any issues, and try again.
错误代码是 -TPE1122
这是我们尝试从 SoapUI 发布的示例 XML 部分
. . . 1094/1095C 应用程序/xml 843C9A557FC3ABF06EF26C5A4A69E19C 2426 Form1094C_Request_TCC_20160225T2003478641Z.xml
你能指导我们这有什么问题吗?
web-services - IRS:手动设置端点地址时出错。“消息中的 WS 安全标头无效”
IRS ACA 有两个 Web 服务,1) 提交 aca 表格和 2) 检查提交表格的状态。我面临的问题是2)一个,即我们检查状态的Web服务。
我使用 Java 1.8 和 Apache CXF 3.1.5 作为这些服务的客户端。
问题是当我在 cxf 客户端代理上手动设置端点地址时,我得到了安全错误,如果我不设置,它使用来自 WSDL 的地址并且工作正常。
有没有人遇到过这个问题?
c# - 格式错误的参考元素
我正在尝试将引用添加到我的安全标头并遇到一个相当普遍的错误:
格式错误的参考元素
我已经尝试了以下类似的结果:
- 通过将元素的 传递为对象的 来引用文档中
ID
的元素。URI
Reference
- 通过方法传递一个
XmlElement
对象。我正在使用在此 StackOverflow 帖子中找到的重载来检索引用。Reference
LoadXml()
XmlElement
GetIdElement
当我将空字符串作为 传递时URI
,该ComputeSignature()
方法SignedXml
按预期工作。但是,我最多需要添加 3 个对安全标头的引用。
更新#1
感谢这篇博文,我能够从中创建简化版本,我相信导致我的问题的原因是Namespace
属性和前缀的使用。
更新#2
似乎元素Id
属性上的命名空间声明<Timestamp>
导致发生此错误。
更新#3
我想我得到了这个工作。请参阅下面的我的回答帖子。
工作示例:
请注意Id XAttribute
定义的命名空间不起作用;虽然Id XAttribute
没有定义命名空间确实有效。
c# - IRS ACA SOAP 边界错误
我正在使用 httpClient 向 IRS ACA 网络服务发布 GZip 压缩 SOAP 请求。您将在下面找到 SOAP 请求。我得到下面引用的边界错误。谁能指出我的请求有问题?
多部分流在遇到终止边界之前结束
c# - IRS-A2A BulkRequestTransmitter 消息格式不正确和/或无法解释
尝试通过 BulkRequestTransmitter Web 服务提交时收到以下错误。就这条消息而言,Composition Guide 的帮助不大,当我将我的 SOAP XML 与 Composition Guide 中的 SOAP 进行比较时,它们似乎是相得益彰的。我希望另一双眼睛能够看到问题所在。
消息格式不正确和/或无法解释。请查看位于https://www.irs.gov/for-Tax-Pros/Software-Developers/Information-Returns/Affordable-Care-Act-Information的 AIR 提交组成和参考指南第 3 节中概述的 XML 标准-Return-AIR-Program,更正任何问题,然后重试。
我试过的:
- 尝试在 SOAP 信封中提交带有(和不带有)空格的内容。
- 尝试使用 XML 格式的表单数据 XML 提交。
尝试使用base64string
格式提交的表单数据(与本次提交一样)。ds
为 Signature 元素添加了前缀。使用此 SO 帖子将前缀添加到 Signature 元素。- 根据更新的合成指南 (v4.2) 添加了“Pretty Print”格式的表单数据。
- 复制了撰写指南第10.3节中概述
MIME
的请求的格式。BulkTransmitterService
- 创建了两个解决方案: 1.)手动创建 SOAP 请求所需的 XML 并通过
HttpWebRequest
对象发送;WSDL
2.) 通过导入的项目发送提交请求Service Reference
,使用自定义编码器GZip and Mtom Encoding
并手动创建 SOAP 状态请求所需的 XML(通过发送HttpWebRequest
)。
更新 #1
根据一些新增内容更新了请求。
ds
为 Signature 元素添加了前缀。- 根据更新的合成指南(v4.2:第 5.4.2 节)添加了“Pretty Print”格式的表单数据。
更新 #2
我开始SOAP
在 Visual Studio 的新实例中手动创建 .xml 文件,并根据需要导入架构引用。我在任何类型的应用程序创建之外执行此操作。
在这样做的过程中,我能够在SOAP
我通过我的应用程序创建的程序中找到一些额外的错误(感谢您的智能感知!)。我发现的错误在 Manifest XML 中,因为它们不符合 IRS 模式。
我将在接下来的 24 小时内调查这些内容并进行相应更新。
urn:MailingAddressGrp
应该有一个urn:USAddressGrp
或的孩子urn:ForeignAddressGrp
。然后那个孩子应该包含正确的地址元素。我的代码目前缺少urn:MailingAddressGrp
.urn1:DocumentSystemFileNm
of 的值Form1094C_Request_[TCC]_yyyyMMddThhmmssfffZ.xml
不正确。我还不完全确定它应该是什么。该元素存在与我所拥有urn1:BulkExchangeFile
的元素相关的问题。xop:Include
架构需要 base64Binary 类型。
更新 #2.5
- 更新了我的 XML 生成过程以包含该
USAddressGrp
元素。 - 发现我在几毫秒内多了一个字符(四个而不是三个)。一旦我更正了这一点,并从文件名的开头删除字符串“Form”, 的值
urn1:DocumentSystemFileNm
就能够成功地验证架构。
更新#3
- 根据我所做的更新更新了完整请求。在这一点上,我无法推断出我的请求有什么问题。如果有人看到任何刺眼的东西,请帮忙!
更新#4
根据所做的其他更新更新了完整请求。
ds
根据另一个 SO 用户的反馈,从签名中删除了前缀。该用户已经使这些请求生效,而无需在ds
事后将前缀附加到签名并重新计算签名。SO 用户还确认他的请求正在处理一个
<inc:Include>
被设置为该元素的子元素的<BulkExchangeFile>
元素。- 根据合成指南第 10.3 节中的示例,确认
MIME
标题是正确的。
更新#5
我目前有两种解决方案:一种是手动发送,创建 SOAP 请求所需的 XML 并通过发送
HttpWebRequest
;一种是使用WSDL Service Reference
提交请求,使用下面概述的自定义编码器,并手动创建状态的 SOAP 请求所需的 XML。截至本次更新,解决方案 1 在发出提交请求时给我上面的错误,在发出状态请求时给我下面的错误。但是,在使用解决方案 2 时,两个请求(提交和状态)都会给我以下错误。
我正在调查可能的证书问题,看看他们是否在这些解决方案中取得了任何进展。
更新 #6
我遇到了许多问题,导致我被耽搁了。我不会详细说明细节,但缺点是我们没有在 IRS 系统中注册安全证书,也没有正确安装证书,以便我可以通过X509Store
. 最后,这些事情都完成了,我能够测试从服务器向 IRS 提交数据(与我的本地机器相比,它没有正确的证书)。不幸的是,我仍然收到下面详述的 WS-Security 错误。我已经用我当前发送的内容更新了完整请求。
消息发生错误:消息中的 WS 安全标头无效。请查看位于https://www.irs.gov/for-Tax-Pros/Software-Developers/Information-Returns/Affordable-Care-Act-Information的 AIR 提交组成和参考指南第 5 节中概述的传输说明-Return-AIR-Program,更正任何问题,然后重试。
MIME 标头中的所有换行符都是原样的,我相信换行符是预期的。 FormData 附件是作为 Pretty Print 发送的,而 SOAP Envelope 不是;这篇文章中的 SOAP 信封经过格式化以提高可读性。
更新#7:
感谢用户:jstill 和fatherOfWine 以及他们在下面发布的内容,并感谢 Bon 对这个项目的早期帮助。我已经打破了一堵墙让提交工作。它现在正在工作。状态请求也有效。但是,我需要弄清楚如何处理它以便从中提取状态和附件(错误数据文件)。
完整请求: