Citrixwi with netlet problem

Greetings.

I am running sun portal and gateway 2005Q1, and am trying to add Citrix support through the citrixwi portlet.With everything configured, users are SSO'd to citrix correctly, and see their list of applications. When they click on an app, two new browser windows open up. A larger one in the middle of the screen which says 'Loading Citrix Application... Please Wait', and a smaller one in the bottom right corner which is empty with a gray background. I think the netlet should be launching from the smaller window, but it is not. The java console on the client gives the error below.

Any help is greatly appriciated.

Ryan

load: class SServer.class not found.

java.lang.ClassNotFoundException: SServer.class

at sun.applet.AppletClassLoader.findClass(Unknown Source)

at java.lang.ClassLoader.loadClass(Unknown Source)

at sun.applet.AppletClassLoader.loadClass(Unknown Source)

at java.lang.ClassLoader.loadClass(Unknown Source)

at sun.applet.AppletClassLoader.loadCode(Unknown Source)

at sun.applet.AppletPanel.createApplet(Unknown Source)

at sun.plugin.AppletViewer.createApplet(Unknown Source)

at sun.applet.AppletPanel.runLoader(Unknown Source)

at sun.applet.AppletPanel.run(Unknown Source)

at java.lang.Thread.run(Unknown Source)

[1348 byte] By [djlarsu] at [2007-11-25 20:18:01]
# 1

Hi!

Netlet works differently now in 2005Q1. To get Citrixwi to work you have to rewrite it.

The class SServer has been replaced by NetletApplet

I did a lot of changes to Citrixwi but the quintessence to get it to work with 2005Q1 is the to replace some code in citrixnetlet.jsp:

New code:

<applet name="mynetlet" codebase="<%=mycontext%>/netlet" archive="netlet.jar, netletjsse.jar" code="com/sun/portal/netlet/client/applet/NetletApplet.class" id=mynetlet width=1 height=1 MAYSCRIPT>

Old code:

<applet codebase="<%=mycontext%>/netlet" archive="netlet.jar,netletjsse.jar,kssl.jar" code="SServer.class" name=mynetlet id=mynetlet width=1 height=1 MAYSCRIPT>

Also you have to replace the cipher used:

<param name=cipher_0 value=KSSL_SSL3_RSA_WITH_RC4_128_MD5|SSL_RSA_WITH_RC4_128

_MD5>

was:

<param name=cipher_0 value=Rijndael>

I did replace the other ciphers in the code too, but I am not sure anymore if this is necessary.

I dont know if this is enough, I made lots of changes to the provider.

hth

Chris

CRabel at 2007-7-4 15:02:50 > top of Java-index,Web & Directory Servers,Portal Servers...
# 2

Thank you, this has made some progress!

The netlet applet now starts to launch, but generates this error in the client's java console.

java.lang.NullPointerException

at com.sun.portal.netlet.client.common.NL17.t(NL17)

at com.sun.portal.netlet.client.common.NL17.F(NL17)

at com.sun.portal.netlet.client.common.NL17.g(NL17)

at com.sun.portal.netlet.client.applet.NetletApplet.h(NetletApplet)

at com.sun.portal.netlet.client.applet.NetletApplet.start(NetletApplet)

at sun.applet.AppletPanel.run(Unknown Source)

at java.lang.Thread.run(Unknown Source)

Any thoughts? Is it possible for me to get a copy of your code?

Thanks,

Ryan

djlarsu at 2007-7-4 15:02:50 > top of Java-index,Web & Directory Servers,Portal Servers...
# 3

Hi!

Ah, I forgot. Netlet has to be initialized. Add this to the citrixbody jsp.

<iframe src="http://portalserver/portal/NetletConfig?func=makeDetectFrame"

width="1"

height="1"

name="blackbock"

scrolling="no"

FRAMEBORDER="0"

></iframe>

hth

Chris

CRabel at 2007-7-4 15:02:50 > top of Java-index,Web & Directory Servers,Portal Servers...
# 4

Thanks again for your continued help.

I now get this feedback in the java console when loading the citrix portlet.

NetletEnvDetect init

NetletEnvDetect configURL : https://my.findlay.edu/http://my.findlay.edu/portal/NetletConfig

gateway protocol : https

gateway host : my.findlay.edu

gateway port : 443

Netlet config: https://my.findlay.edu/http://my.findlay.edu/portal/NetletConfig?func=loadResou rces

Java version : 1.5.0_04

Proxy type : direct

Netlet not using proxy

Client Config proxyHost null

Client Config proxyPort 0

Client Config proxyMode false

Netlet rule 0: local:58000 destination:my.findlay.edu:80

Netlet rule 1: local:30021 destination:TARGET:21

Netlet rule 2: local:10025 destination:TARGET:25

Netlet rule 3: local:10143 destination:TARGET:143

Netlet rule 4: local:30000 destination:TARGET:23

Local port configuration -> {loopback=[58000:58000], FTP=[30021:30021], IMAP=[10025:10025, 10143:10143], Telnet=[30000:30000]}

Post URL -> https://my.findlay.edu/http://my.findlay.edu/portal/NetletConfig?func=setLoaded

Netlet unable connect back to server : status update failed.

And then this when I try to launch an application.

java.lang.NullPointerException

at com.sun.portal.netlet.client.common.NL17.t(NL17)

at com.sun.portal.netlet.client.common.NL17.F(NL17)

at com.sun.portal.netlet.client.common.NL17.g(NL17)

at com.sun.portal.netlet.client.applet.NetletApplet.h(NetletApplet)

at com.sun.portal.netlet.client.applet.NetletApplet.start(NetletApplet)

at sun.applet.AppletPanel.run(Unknown Source)

at java.lang.Thread.run(Unknown Source)

Exception in thread "thread applet-com/sun/portal/netlet/client/applet/NetletApplet.class" java.lang.NullPointerException

at sun.plugin.util.GrayBoxPainter.showLoadingError(Unknown Source)

at sun.plugin.AppletViewer.showAppletException(Unknown Source)

at sun.applet.AppletPanel.run(Unknown Source)

at java.lang.Thread.run(Unknown Source)

It looks like the initial netlet applet load is just opening the default ports, and not what is defined in the NetletConfiguration property of the citrix applet. Should I change the netlet config to handle the citrix xml server stuff too? I don't know what the NullPointerException means.

Thanks,

Ryan

djlarsu at 2007-7-4 15:02:50 > top of Java-index,Web & Directory Servers,Portal Servers...
# 5

Hi!

I cant check at the moment because I am on road, but the first is completely normal.

Netlet has to be initialized, the NetletConfig does not open any ports so far.

(Or let me rephrase, the ports lead nowhere after init)

So, this is as expected!

About the exception:

I get the same exception(or something very similar) when I am too fast(I open the page and click immediately on the application).

Does it help if you wait a few seconds before starting applications?

Does Netlet itself, e.g. a telnet somewhere work for you?

CRabel at 2007-7-4 15:02:50 > top of Java-index,Web & Directory Servers,Portal Servers...
# 6
Netlet is working ok. The default netlet config sets localhost:58000 to my.findlay.edu:80, and so browsing to http://127.0.0.1:58000/ works ok. Waiting on the Citrix portlet to load does not make any difference. The bottom error still occurs.
djlarsu at 2007-7-4 15:02:50 > top of Java-index,Web & Directory Servers,Portal Servers...