2013-03-11 2 views
2

제 문제는 JMeter와 BeanShell PostProcessor에 관한 것입니다.JMeter로 자바 메소드 호출하기

Eclipse로 Java 프로젝트를 개발하고 해당 프로젝트를 jar 파일로 내 보냈습니다. JMeter의/lib/ext 폴더에이 항아리를 넣었습니다.

java -jar C:\Program Files\apache-jmeter-2.9\lib\ext\myJar.jar으로 전화하면 모든 것이 잘 동작합니다.

이제 JMeter의 항아리에있는 메서드를 호출하고 싶습니다. 내 Beanshell 프로세서 안에이 코드를 넣었습니다 :

import bsh.LoadProperties; 
import bsh.SSOTokenHelper; 

LoadProperties loadProperties = new LoadProperties(); 
loadProperties.init(); 

result = SSOTokenHelper.getSecurityToken(); 

정보는 내 메인 클래스에있는 정확한 코드입니다. 그러나 JMeter를의 로그 파일에 나는이 메시지를 가지고 :

jmeter.util.BeanShellInterpreter : 오류 호출 BSH 방법 : 평가 전래 파일 : 인라인 평가 :``수입 bsh.LoadProperties; import bsh.SSOTokenHelper; LoadProperties loadProper. . . '': 메소드 호출 SSOTokenHelper.getSecurityToken

가 작동 왜 내가 직접 내 항아리를 호출하고 난 JMeter를하여 똑같은 일을 할 때 왜 작동하지 않는 경우 이해가되지 않습니다.

도움 주셔서 감사합니다.

답변

1

bsh.SSOTokenHelper은 javadocs의 http://www.beanshell.org/javadoc/index.html에 따르면 실제 BeanShell 클래스가 아닙니다. 가져 오기를 수정해야하거나 SSOTokenHelper 클래스를 작성한 경우 혼동을 피하기 위해 다른 패키지에 넣고 클래스가 JMeter에서 사용 가능한지 확인하십시오.

+0

확인. 당신의 도움을 주셔서 감사합니다. 나는 그 수업을 직접 만들었습니다. 패키지의 이름을 변경하고 JMeter의/lib/ext 폴더에 새 항아리를 넣었지만 여전히 같은 문제가 있습니다. – northix

+0

zip 파일 뷰어에서 만든 jar 파일을 열고 디렉토리 구조가 올바른지 확인하십시오. jar 파일에 대한 Java 자습서를보십시오. http://docs.oracle.com/javase/tutorial/deployment/jar/ – artbristol

+0

java-jar myJar.jar을 호출하면 정상적으로 작동합니다. 내 디렉토리 구조가 잘못되었을 수 있습니까? 나는 당신의 링크를 어쨌든 전리품으로 잡을 것이다.) Beanshell과 함께 jar를 호출함으로써 제한이 있는지 알고 싶다. (예 : 제네릭 타입을 이해할 수 없다). – northix

관련 문제