首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >是否有人成功地使用来自LotusScript的ODF“简单API”来生成文档?

是否有人成功地使用来自LotusScript的ODF“简单API”来生成文档?
EN

Stack Overflow用户
提问于 2014-01-13 20:04:52
回答 1查看 543关注 0票数 1

我试图使用LS2J从LotusScript调用ODF (https://incubator.apache.org/odftoolkit/simple/index.html)的简单API,但我无法正确地使用它。

我在一个名为ODFDOM的Java库中包含了以下内容:

  • odfdom-java-0.8.7.jar
  • simple-odf-v0.4.5.jar
  • Xerces-J-bin.2.11.0-xml-schema-1.1-beta.zip

在代理的子初始化中使用此代码:

代码语言:javascript
复制
Dim js As javasession
Dim jc As Javaclass
Dim jerr As JAVAERROR
Dim jms As JavaMethodCollection
Dim jobj As Javaobject, jdoc As JavaObject
Dim jm As JAVAMETHOD

Set js = New JavaSession
Set jc = js.Getclass("org/odftoolkit/simple/SpreadsheetDocument")
Set jm = jc.GetMethod("newSpreadsheetDocument", "()Lorg/odftoolkit/simple/SpreadsheetDocument;")
Set jdoc = jm.Invoke

执行会产生错误:

JS2J错误:引发java.lang.NullPointerException

我做错什么了有什么线索吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-01-14 09:18:46

您必须“使用”您的库"ODFDOM“,并使用带点的Java符号获取类。您可以通过直接调用静态方法来缩短代码:

代码语言:javascript
复制
Use "ODFDOM"
Dim js As javasession
Dim jSpreadsheetDocumentClass As Javaclass
Dim jdoc As JavaObject

Set js = New JavaSession
Set jSpreadsheetDocumentClass  = js.Getclass("org.odftoolkit.simple.SpreadsheetDocument")
Set jdoc = jSpreadsheetDocumentClass.newSpreadsheetDocument()

更新:

LS2J不适用于资源。无论何时使用Java代码中的资源,它都不能使用LS2J。在简短地查看了ODF源代码之后,我看到了使用的资源。

所以,创建一个Java代理,然后从LotusScript调用它。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21100358

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档