2016-10-15 43 views
0

私はgosu scratchpadからプライベートメソッドを呼び出す際に、invoke()メソッドを使用しています。私はそのプライベートメソッドにアクセスできません。 はいずれもGOSU Language.Hereでプライベートメソッドを呼び出すための最善の方法は、私はこのコードを実行しようとすると、私は**次の例外Gosuでプライベートメソッドを呼び出す方法

java.lang.IllegalAccessException: Class program_.__Program__505 can not access a member of class com.guidewire.cc.domain.claim.impl.ClaimSearchCriteriaImpl with modifiers "private" 
    at sun.reflect.Reflection.ensureMemberAccess(Reflection.java:105) 
    at java.lang.reflect.AccessibleObject.slowCheckMemberAccess(AccessibleObject.java:261) 
    at java.lang.reflect.AccessibleObject.checkAccess(AccessibleObject.java:253) 
    at java.lang.reflect.Method.invoke(Method.java:599) 
    at program_.__Program__505.evaluate(Unknown Source) 
    at gw.internal.gosu.parser.GosuProgram.runProgram(GosuProgram.java:421) 
    at gw.internal.gosu.parser.GosuProgram.evaluate(GosuProgram.java:253) 
    at gw.internal.gosu.parser.GosuProgram_Proxy.evaluate(gw.internal.gosu.parser.GosuProgram_Proxy:2) 
    at gw.internal.gosu.parser.ExecutionEnvironment$1.evaluate(ExecutionEnvironment.java:543) 
    at gw.internal.gosu.parser.ExecutionEnvironment$1.runScript(ExecutionEnvironment.java:523) 
    at gw.internal.gosu.parser.ExecutionEnvironment$1.run(ExecutionEnvironment.java:489) 
    at java.lang.Thread.run(Thread.java:724) 
+0

他のクラスやオブジェクトがその修飾子を持つメソッドを使用できないようにする 'private'キーワードの全体的なポイントはありませんか?これは、アプリケーションが設計どおりに動作しているようです。 – Waterbagel

+0

あなたはこれを理解しましたか? – dawogfather

答えて

-1

を取得していますコード

try{ 
    var clazz = java.lang.Class.forName(ClaimSearchCriteriaImpl) 
    var method = clazz.getDeclaredMethod("generateSimpleActiveClaimViewQuery", null) 
     method.setAccessible(true) 
    var ss = method.invoke(clazz, null)as ClaimSearchCriteriaImpl 
     print("Result.."+ss) 
} catch(exception){ 
     print("***********"+exception) 
} 

で教えてもらえますこのコードを試してください。インスタンス化しました**

関連する問題