- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试使用 LS2J 将一个 java 类(一个 bean)的对象传递给另一个类。
问题是返回了一个错误:
LS2J Error: Threw java.lang.ClassNotFoundException: com.pasquier.DTO.WS.LogWSDTO
我不知道为什么?
我有一个通常带有 getter 和 setter 的类 bean。我想在另一个中传递此类的实例。
我在 Lotus LS2J 中的类(class):
Class LogWebService
sessionJava As JAVASESSION
classJava As JAVACLASS
objectJava As JAVAOBJECT
methodJava As JAVAMETHOD
Public Sub New()
Set sessionJava = New JAVASESSION
Set classJava = sessionJava.GetClass("com.pasquier.launcher/LogWebService")
Set objectJava = classJava.CreateObject
End Sub
Public Sub setLog(logDTO As LogWSDTO)
Set methodJava = classJava.GetMethod("setLog","(Lcom/pasquier/DTO/WS/LogWSDTO;)V")
objectJava.setLog(logDTO)
End Sub
End Class
崩溃的是setLog方法
我在代码中调用它:
Class LogGetAllDocumentsDAO
Private ilog As LogWebService
Private logDTO As LogWSDTO
Private docDTO As LogGetAllDocumentsDTO
Public Sub New(logWSparam As LogWSDTO, docDTOparam As LogGetAllDocumentsDTO)
Set Me.logDTO = logWSparam
Set Me.docDTO = docDTOparam
End Sub
Public Sub appelLog()
Set ilog = New LogWebService()
' error: LS2J Error: Threw java.lang.ClassNotFoundException: com.pasquier.DTO.WS.LogWSDTO
Call ilog.setLog(logDTO)
End Sub
一个想法?
我在与 LogWebService 相同的库中有一个类 LogDTO。
Class LogWSDTO
sessionJava As JAVASESSION
classJava As JAVACLASS
objectJava As JAVAOBJECT
methodJava As JAVAMETHOD
Public Sub New()
Set sessionJava = New JAVASESSION
Set classJava = sessionJava.GetClass("com.pasquier.DTO.WS/LogWSDTO")
Set objectJava = classJava.CreateObject
End Sub
如果我明白我不能通过 logDTO :
Set Me.logDTO = logWSparam
是吗?但是我该怎么做呢??
好吧,我试过了,但没用。
我在 LS2J 中添加了一个 getObjet 方法(不在 java 中,仅在 lotus 中)
Class LogWSDTO
sessionJava As JAVASESSION
classJava As JAVACLASS
objectJava As JAVAOBJECT
methodJava As JAVAMETHOD
Public Sub New()
Set sessionJava = New JAVASESSION
Set classJava = sessionJava.GetClass("com.pasquier.DTO.WS/LogWSDTO")
Set objectJava = classJava.CreateObject
End Sub
Public Function getJavaObject()
Set getJavaObject = objectJava
End Function
我尝试在我的程序中调用它:
Class LogGetAllDocumentsDAO
Private ilog As LogWebService
Private logDTO As LogWSDTO
Private docDTO As LogGetAllDocumentsDTO
Public Sub New(logWSparam As LogWSDTO, docDTOparam As LogGetAllDocumentsDTO)
Set Me.logDTO = logWSparam
Set Me.docDTO = docDTOparam
End Sub
Public Sub appelLog()
Call ajouterParam()
Set ilog = New LogWebService()
Call ilog.setLog(logDTO.getJavaObject())
End Sub
我无法保存此更改:它返回:
"type mismatch on : GETJAVAOBJECT"
所以我尝试在 LogWebService 的 java 类中添加该方法。我在 LS2J 中尝试:
Public Function getJavaObject()
Set methodJava = classJava.GetMethod("getJavaObject","()Lcom/pasquier/DTO/WS/LogWSDTO;")
getJavaObject = objectJava.getJavaObject()
End Function
我调用:
Public Sub appelLog()
Set ilog = New LogWebService()
Set logDTO = logDTO.getJavaObject
Call ilog.setLog(logDTO)
它不起作用,同样的信息,我哭了!!!
最佳答案
objectJava.setLog(logDTO)
- logDTO 必须是 LS2J 生成的 Java 对象。它不适用于 LotusScript 类对象。
将方法 getJavaObject() 添加到您的 LotusScript 类 LogWSDTO,它返回 LS2J Java 对象 objectJava
。然后以这种方式使用它:
objectJava.setLog(logDTO.getJavaObject())
这是一个工作示例:
LotusScript 代理:
Option Declare
UseLSX "*javacon"
Use "AandB"
Class LogWSDTO
sessionJava As JAVASESSION
classJava As JAVACLASS
objectJava As JAVAOBJECT
Public Sub New()
Set sessionJava = New JAVASESSION
Set classJava = sessionJava.GetClass("de.leonso.test/B")
Set objectJava = classJava.CreateObject
End Sub
Public Function getJavaObject()
Set getJavaObject = objectJava
End Function
End Class
Sub Initialize
Dim sessionJava As JAVASESSION
Dim classJavaA As JAVACLASS
Dim objectJavaA As JAVAOBJECT
Dim lsB As LogWSDTO
Set sessionJava = New JAVASESSION
Set classJavaA = sessionJava.GetClass("de.leonso.test/A")
Set objectJavaA = classJavaA.CreateObject
Set lsB = New LogWSDTO()
print objectJavaA.a(lsB.getJavaObject())
End Sub
Java ScriptLibrary“AandB”中的 Java 类:
package de.leonso.test;
public class A {
public String a(B b) {
return b.b();
}
}
package de.leonso.test;
public class B {
public String b() {
return ("hallo");
}
}
关于java - 如何在 LS2J 的另一个类的参数中传递一个对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24432443/
如果我执行 ls -la,我会得到如下结果 total 16 drwxr-xr-x 4 rockse staff 136 Apr 28 16:55 . drwx------+ 23 rocks
我找到了一些Linux文件,当我键入ls -lah时,它将输出以下权限格式: ... drwxr-xr-x. 2 root root ... -rw-rw-r--. 1 root r
我正在尝试从 python 执行 ls -l 来检查文件的最后修改日期。 os.listdir 不显示长列表格式。subprocess.call 显示格式,但实际上打印它,并返回 0。我希望能够将其放
以下 shell 函数定义卡在 Cygwin 的 bash 控制台 (RHEL/Ubuntu) 中,当它被调用时它只是退出终端。 $ function ls { ls; } $ ls 为什么会出现这种
为什么这两个命令的输出不同: ls | cat ls 第一个似乎用换行符分隔文件名。 这也适用于命令 suc 有 ls > outfile 和类似的东西。 我使用的是 Mac OSX,如果这有什么不同
已关闭。此问题不符合Stack Overflow guidelines 。目前不接受答案。 这个问题似乎不是关于 a specific programming problem, a software
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 这个问题似乎不是关于 a specific programming problem, a softwar
我使用 eshell-parse-command 'ls -l' 得到了这个: (progn (eshell-trap-errors (eshell-named-command "l
如何使用 RegExp 在 JavaScript 中实现类似于 alias 的功能? ALIAS = [{pattern: /^ls[$ ]/, replace: 'ls --color '}] s
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 这个问题似乎不是关于 a specific programming problem, a softwar
我正在编写一个 shell 程序,当将值传递给 execv() 时,我需要一个指向程序名称的 char 指针(即 ls),我需要一个指向参数的 char 指针数组的指针。 我会检查并解析用户的输入,如
我对使用 bash 编写脚本还比较陌生,并编写了以下脚本: # Set variables logfile=/tmp/peter/logfile.log indir=/mls/indir/IG/ te
所以基本上我有一个任务要使用 strace 进行分析,ls 命令需要哪些系统调用才能提供与 ls -l 相同的信息。 但是对于 ls -l 命令有许多奇怪的系统调用,例如 stat 64 被调用时使用
我在 ubuntu 的文件夹中有一个文件夹列表。IE。/mnt/source/customcode/files/brands/下 root@a919794ec280:/mnt/source/custo
已关闭。此问题不符合Stack Overflow guidelines 。目前不接受答案。 这个问题似乎不是关于 a specific programming problem, a software
#include #include #include #include #include int flag; void catch (int sig) { if (sig == SIGI
我使用 Process 来调用 shell(zsh),我想 cd ~ 或其他一些目录,例如在 shell 中定义的 cd $PROJ_ROOT。但似乎无法处理这些 token 。如何解决这个问题? s
我在我的 Centos5 机器上运行了这个: ls -al & ; ls -al 我期待它在后台运行 ls -al,同时在前台运行 ls -al,并演示终端的输出是如何被破坏的通过这样做。 但是,我得
当我在 PowerShell 中使用 Get-ChildItem 时,我会得到目录中以行格式设置的项目列表。该列表经常会超出屏幕,如果我想查看列表的其余部分或以前的命令和输出,则迫使我向上滚动。我想为
我试图用所有必要的参数绕过调用 JNIEnv->DefineClass 方法,但当我尝试从 java 调用该方法时,它总是返回 java.lang.NoClassDefFoundError: ls.H
我是一名优秀的程序员,十分优秀!