Eclipse 插件孵化器的 "Web Templates (Advanced)" 插件(带有安全的 Redmine):无法解析 RSS 提要/无效 xml

Eclipse plugin Incubator's "Web Templates (Advanced)" plugin (with secured Redmine): Failed to parse RSS feed / invalid xml

尝试将一些受限的 Redmine 实例连接到我们的 Eclipse Mylyn 环境,它在开始时工作正常,但重新导入没有出现一些错误 "Failed to parse RSS feed"。

我偶然发现了这个 #246440 Eclipse Mylyn ticket,其中一些解决方法是手动重新创建 Task Repository,包括 Task List Queries
但这不是一个好的解决方案。

所以我又玩了一会儿,发现以下解决了我们的导入问题:

  1. 最有可能满足您的需求:从导出的 <task list query>.xml.zip / tasklist.xml 中删除 key 值(或其他与安全相关的数据),因为查询包含一些依赖于用户的身份验证 API(例如,如果与其他用户共享)

    • 它无论如何都应该在您的相关 Task Repository 上为所有依赖查询配置,并且将在以后导入时自动重新导入
  2. 确保(例如通过一些使用的格式化程序,CTRL + F 或手动格式化)在文本值 XML 节点中 没有空格 ,因为查询可能会在导入后停止工作:

    • 例如

      <Attribute Key="Regexp">^({Id}\d+);({Type}[^;]*);...$
      </Attribute>
      

      应该是:

      <Attribute Key="Regexp">^({Id}\d+);({Type}[^;]*);...$</Attribute>
      
  3. 继续 Task List -> <your imported query> -> right click -> Properties -> Finish 所以一些内部魔法 "fixes" 你的查询

另一个调试提示:您始终可以使用 <your query -> Properties -> Advanced Configuration -> Open 按钮检查检索到的文件(以及使用 Preview 按钮的 Query Pattern 正则表达式),这应该将未解析的查询结果放入例如c:\Users\<loginname>\AppData\Local\Temp\mylyn-web-connector4155864524987884464.html.


顺便说一句:(如果您处于上述位置,它可能对您或您的团队有用...)使用 Web 连接器,我通过 API 键结合使用找到了集成.../issues.csv... 格式比 .../issues.xml... 变体更有用和可配置。
我们使用类似这样的方法来解析 CSV(并通过普通过滤器对话框生成参数、它们的顺序等):^({Id}\d+);({Type}[^;]*);({Status}[^;]*);"?({Owner}[^";]*)"?;({Description}[^;]*)$.
优点是:更简单的正则表达式,Description 的可连接数据通过列排序和无需分页获取所有数据(=> 我们可以跳过 pageper_pagelimitoffset).