webForumDet fria alternativet

CBT applet + javascript via LiveConnect

1 svar · 380 visningar · startad av Arizon

ArizonMedlem sedan juli 200799 inlägg
#1

Hejsan!
Jag har en signed applet på min sida, som ska anropa ett javascript som sedan ska göra en form.submit();
det ser ut såhär:

<applet width="460" height="140" mayscript code="com.ibm.cbt_bidt_3_2_8.thinclient.LogonApplet.class"     
                           archive="cbt_bidt_3_2_8_sign.jar"
                           id="LoginApplet" style="padding-left: 20px; padding-top: 20px;" >
                       <param name="scriptable" value="true" />
                       <param name="mayscript" value="true" />
                       <param name="cabbase" value="cbt_bidt_3_2_8_sign.cab" />
                       <param name="locale" value="sv" />
                       <param name="adddata" value="<%= Session["challenge"] %>" />
                </applet>
                <form id="LogonForm" method="POST" action="SignPage.aspx">
                    <input name="signature" value="" type="HIDDEN" />
                </form>

 <script type="text/javascript" language="JavaScript">
                    function onLogonOK(logonMessage) {
                        document.LogonForm.signature.value = logonMessage;
                        document.LogonForm.submit()
                    }
</script>

appletkoden för anropet ser ut såhär:

import netscape.javascript.JSObject;

public final class JSCallbackImpl extends s implements Copyright_IBM
{
    public void a(String string, String[] strings) {
	try {
	    JSObject.getWindow(a).call(string, strings);
	} catch (Throwable throwable) {
	    System.out.println("\nFunction call: " + string + "\n"
			       + "Communication Error to JavaScript: "
			       + throwable);
	}
    }
    
    public Object a(String string) {
	Object object = null;
	String string_0_ = null;
	Object object_1_ = null;
	try {
	    JSObject jsobject = JSObject.getWindow(a);
	    try {
		StringTokenizer stringtokenizer
		    = new StringTokenizer(string, ".");
		for (int i = 0; i < stringtokenizer.countTokens() - 1; i++) {
		    string_0_ = stringtokenizer.nextToken();
		    jsobject = (JSObject) jsobject.getMember(string_0_);
		}
		if (stringtokenizer.hasMoreTokens()) {
		    string_0_ = stringtokenizer.nextToken();
		    object_1_ = jsobject.getMember(string_0_);
		}
	    } catch (Throwable throwable) {
		System.out.println("\nJavaScript property not found: "
				   + string_0_ + " of " + string + "\n"
				   + throwable);
	    }
	} catch (Throwable throwable) {
	    /* empty */
	}
	return object_1_;
    }
}

namngivningen är helt åt helvete i alla klasser i appleten (jag har INTE skrivit den) så det är sjukt svårt att fatta sammanhanget.

I javaconsolen får jag detta meddelandet:

network: Cachepost ej hittad [webbadress: http://localhost:3461/cbt_bidt_3_2_8_sign.jar, version: null]
network: Cachepost ej hittad [webbadress: http://localhost:3461/cbt_bidt_3_2_8_sign.jar, version: null]
Säkerhetsmodell för Netscape kan inte längre hanteras.
Övergå till säkerhetsmodellen för Java 2 i stället.

Säkerhetsmodell för Netscape kan inte längre hanteras.
Övergå till säkerhetsmodellen för Java 2 i stället.

liveconnect: Anropar JS-metod: onLogonOK

Function call: onLogonOK
Communication Error to JavaScript: netscape.javascript.JSException

När jag kör appleten så blir allt grått som om den processerar, vilket den ska, men sen händer inget mer.

ArizonMedlem sedan juli 200799 inlägg
#2

nån som har nåt förslag?

135 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
132 ms — hämta tråd, inlägg och bilagor (db)