Jira数据导出,Java写mpp文件

关键字: Jira和MsProject互导/java写MsProject文件/java写Mpp文件/nileader/ni掌柜

#获得所有Issue的页面

JIRA_ISSUE_FULLCONTENT={domain}/sr/jira.issueviews:searchrequest-fullcontent/temp/SearchRequest.html?pid={pid}&fixfor={fixfor}&resolution=-1&sorter/field=priority&sorter/order=DESC&tempMax=10000

#获得指定issueKey的问题的所有子任务JIRA_ISSUESUB_URL={domain}/browse/{issueKey}

使用JIRA的soap客户端来获取jira站点上的所有问题的方法:

首先要实例出一个soap对象

soapSession.getJiraSoapService();

这个SOAPSession其实是帮我们封装了com.atlassian.jira.rpc.soap.service中的一些类。

获取所有的issue

遍历后就可以得到所有RemoteIssue对象了。

完整代码在附件中

查看jira的api

接下去看看将问题下载到本地后,如何处理这些问题及其和子任务.

由于要将问题导入到msproject中进行管理,那么必然要进行java操作msproject文件的过程.

java操作msproject文件方面,已经有一个很好的开源包了,, 这个包唯一的不足之处是他能够读取msproject文件*.mpp中的内容,但是在写方面,他只能通过*.xml作为中间过渡.

读mpp文件

写:

一般的做法就是这样:

通过net.sf.mpxj.mpp.MPPReader: reads Microsoft Project MPP files来读取msproject文件内容

通过net.sf.mpxj.mspdi.MSPDIWriter: writes Microsoft MSPDI (XML) files生成一个msproject支持的文件,

这种做法的结果是:每次用project打开这个xml文件时候,都会进行一次导入向导:

很显然,这样的做法用户体验相当差 这里推荐一种使用Java写mpp文件的做法

方法来源:

(v=office.12).aspx

利用jawin可以进行windows的com组件调用, 利用Project Object Model Reference 可以生成一个msproject 支持的文件. 这样就可以通过Java写*.mpp文件了

具体做法如下:

接下去,ms 官方给我们的提示是:

(v=office.12).aspx

Use theAddmethod to add aProjectobject to theProjectscollection. The following example creates a new project without prompting for project information.

由于实例出com组件的对象,通过jawin帮我们封装好的反射来

接下去的事情好办了,有了一个project对象后,我们相当于只要调用project下面的方法来生成一个详细的project.

所谓详细的project就是为他添加多个task.

最后,进行保存操作,以及不要忘记进行应用程序的关闭.

app.invoke("DocClose");

所有要用到的jar包:

本文出自 “ni掌柜的笔记” 博客,香港虚拟主机,香港虚拟主机,香港服务器,请务必保留此出处

烦恼忧愁不用追,吃点好的别嫌贵,

Jira数据导出,Java写mpp文件

相关文章:

你感兴趣的文章:

标签云: