Skip to main content

"Real world" type of (corporate) environment

16 replies [Last post]
micheldenis
Offline
Joined: 2007-12-10

Hi,

I am trying to set up a system on which users (end-users type) could connect, after downloading and installing a WL client depending on their local desktop and operating system. (later we'll use JWS). Currently there's no special authentication set up (later it will use the corporate-wide LDAP server).

Server is: Solaris 10 with WL version nightly 9-May-2008, on 4100 type of box, 2x dual core, 4 MB RAM, ..
The WL server is inside the corporate intranet, and end users will mostly access it from the internet through the corporate VPN. (there's a standard corporate proxy).

Both the voice bridge and the WL server seem to launch properly.

Could you help with the following issues, related to the clients:

ISSUE#1:
The server is in a machines room, without attached 3D-enabled monitor, and the "owner" of the WL Solution is (far) remote all of the time. Having read that only the Server Master Client could start the core shared apps (conf room, team room,.. ones) it seems to create a real problem as this Master Client cannot be used through SSH/X11 isn't it !? Any trick ?

ISSUE#2:
Typical end users would not like to have to edit and configure client-side param files. For this reason, like such a future typical user I installed the same version of WL (May 8) on the typical future remote laptop that will be used, ie the classical Toshiba Tecra M5 running under WinXP. No configuration done for the time being, counting upon the only parameterization of the login screen.

As username and password I enter something (as there's no authentication set up), as Server I enter this corporate WL server address: 129.157.174.158 (don't know whether a port is needed ?).
In the Network tab concerning the Local IP address I tried all proposed entries from the list, including the 127.0.0.1 and the actual laptop IP address in the SWAN.
In the same tab I also tried the 3 proposed items: no proxy/system proxy/corp-http-proxy

But .. I always get "Login error. Please try again." on the login screen, while the same message comes again and again on the client window log:

[java] 9 mai 2008 18:41:48 org.jdesktop.lg3d.wonderland.scenemanager.AssetD
B setDBSystemDir
[java] FIN: AssetDB SystemDir = C:\Documents and Settings\mdenis\.wonderlan
d\
[java] Login Failed : null

What's wrong typically there ? Which type of selections are needed to make it work on the fly ?

ISSUE#3:
Is the one from:
http://forums.java.net/jive/thread.jspa?threadID=40676&tstart=0

Here again we would not like to force end users to look at finding a way to switch drivers.

MANY THANKS IN ADVANCE !

-michel

Reply viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
paulby
Offline
Joined: 2003-06-13

Hi Deron,

I agree, we should clean up the output of the client significantly so it's easier to identify real problems from debug output. For this specific config example we should probably log at the info level what files we actually loaded and at fine the various failures.

Rgds

Paul

deronj
Offline
Joined: 2003-09-02

Hi Michel,

Please disregard my suggestion that the problem might be caused by something in my.run.properties. Paul has correctly pointed out that this is not the case. So I am mystified. The only way I can think of of figuring out what is going wrong is to query internal information in the wonderland client and possibly even the SMC. We could do it via a debugger or via printlns, if you prefer. Do you feel comfortable with to diving into this next level of detail?

micheldenis
Offline
Joined: 2007-12-10

Hello Deron,

Thank you for your support.
I will send you email.

Cheers,
-michel

deronj
Offline
Joined: 2003-09-02

> Then: I start the normal client ... I launch this client on the server machine and
> put the X11 display remotely on my laptop

Be aware that this configuration is suitable only for debugging the problem with the Shared Apps
menu items being disabled. You won't be able to do much of anything else in the Wonderland client because the 3D graphics will not be sent from the client running on your server to the Wonderland window running on your laptop. OpenGL doesn't redirect across the network like X11 protocol does.

> will try to build a Webstart in a while, also I will
> install Solaris on my remote laptop .. it might work
> better than Windows).

The SMC won't work any better with a different client machine. The problem is with the SMC apps
config path, which I mentioned in my previous reply. That is the problem we need to solve.

paulby
Offline
Joined: 2003-06-13

Hi Deron,

I don't think the failure to load the config file is the problem. The failure you see in the log is the system attempting to load the config file from ~/.wonderland for the user running the server which Michel has not created yet. If you look at the next line you will see that the system then successfully loads the config file from the installation directory /opt/....

Rgds

Paul

deronj
Offline
Joined: 2003-09-02

If you look at the next
> line you will see that the system then successfully
> loads the config file from the installation directory
> /opt/....

Thanks for pointing this out Paul. I really hate how the config file system reports failure to open files in it's sequence of files to check as errors. No other system I know of does this. In checking a list of paths if a file is not in one of the paths it shouldn't be reported to the user as an error. Only if it isn't found in ANY of the paths should it be reported. Perhaps this can be fixed in 0.5?

deronj
Offline
Joined: 2003-09-02

> and then it gives the same log as in one of the above
> replies. (question: Is it a normal start ?)

Now that I understand better what you are trying to do I took a closer look at your SMC log and I noticed a problem. This line indicates a problem:

[java] WARNING: Error loading config file //.wonderland-smc/config//apps-solaris/apps-smc.xml : /.wonderland-smc/config/apps-solaris/apps-smc.xml (No such file or directory)

To me this looks like the SMC is successfully starting up but it cannot find the list of shared applications it should provide to clients. Because it cannot find this file it cannot tell normal
Wonderland clients what apps it is willing to launch and therefore the SMC-related Shared Apps
menu entries (Conference room, etc.) are disabled.

So the question is why the SMC is trying to load this particular file name? This doesn't look
like a real Unix file name (it has a colon in it!) Please post a copy of your lg3d-wonderland/my.run.properties file.

deronj
Offline
Joined: 2003-09-02

> I am just doing what the doc says for this
> nightly-build [b]binary [/b]kit:
>
> "Start the Server Master Client:
> The Server Master Client allows you to start
> applications from the Shared Apps menu. These
> applications will be shared by all users.
> To start the Server Master Client, run the following
> command as root:
> # /opt/lg3d-wonderland/bin/wonderland-smc.sh "
>
This is fine. src/scripts the way to start the SMC in the source tree.
bin/wonderland-smc.sh is the way to start the SMC in the binary release.
You are doing the correct thing.

> There's no "src/" here ...

My mistake. I didn't realize that you were using the binary release.

> Also how could core shared apps be started from an
> [b]invisible [/b]window ?

The SMC is a normal Wonderland client which brings up a normal Wonderland client window
on display :1. However, because in this case display :1 is Xvfb the window is invisible.
Xvfb is an X server which uses a CPU memory frame buffer and never displays anything on a
screen anywhere. Wonderland takes the shared app window pixels out of this memory frame buffer
and sends them to the Wonderland clients running on user displays.

So my understanding of your problem is this: you start the wonderland server and SMC but when you run a wonderland client the Conference Room, Team Room, and Demo Floor entries of the Shared Apps menu are greyed out and inactive. Is this correct? If so, something is either preventing the SMC from starting up fully or else causing it to die shortly after it runs. We need do determine why this is happening. Please confirm that this is what you are experiencing and then I can guide
you through diagnosing the problem.

micheldenis
Offline
Joined: 2007-12-10

Yes I started the server and the SMC, a number of times.
I stopped them now but the SMC log tells me:

"Fatal server error:
Server is already active for display 1
If this server is no longer running, remove /tmp/.X1-lock
and start again"

(question: How should I remove this lock ? .. sorry but I am not yet a Unix specialist....)

and then it gives the same log as in one of the above replies. (question: Is it a normal start ?)

Then: I start the normal client .. but remember that I am in remote and did not yet success to get a WinXP client connected to the server (this is one of the other issues I mentionned above .. which means that here I launch this client on the server machine and put the X11 display remotely on my laptop -- fyi I will try to build a Webstart in a while, also I will install Solaris on my remote laptop .. it might work better than Windows).

However the WL login comes, and .. I can log in -- the little Users and Status windows come, the art is loaded, but the Project Wonderland main windows stays fully white -- probably because I am in X11 mode only and the OpenGL display is not forwarded remotely....... I need a real client probably and it will come when my Webstart is ready.
In this window the Shared Apps menu shows the Team/Conf/Demo apps in grey, but the Run Local Apps item is black ie normal.

Well well ...

-michel

deronj
Offline
Joined: 2003-09-02

> "Fatal server error:
> Server is already active for display 1
> If this server is no longer running, remove
> /tmp/.X1-lock
> and start again"
> question: How should I remove this lock ? .. sorry
> but I am not yet a Unix specialist....)

The presence of this file indicates to other X server which may be starting up that there is a
running X server which is using the display number :1 (in this case). The X server should remove
this file when the X server process dies but sometimes the file gets left around even when the
X server process has gone away (for example, if you did a kill -9 on the process). So do the following to clean up:

1. First do a ps -ef and check the process list to see if there is an Xvfb process which is
using display :1, like this:

dj 8395 8389 1 15:58 pts/2 00:00:00 ./ext/linux/bin/Xvfb.xorg :1

(Note: if you are running the SMC on solaris the process will be called Xvfb).

2. Kill this process

3. Remove /tmp/.X1-lock (if it still exists)

Then make sure that you kill the Java process for the SMC and then you should be able to
rerun wonderland-smc.sh and the SMC should start up cleanly (but this is not happening in
your case, which is the subject of my next message).

deronj
Offline
Joined: 2003-09-02

> ISSUE#1:
> The server is in a machines room, without attached
> 3D-enabled monitor, and the "owner" of the WL
> Solution is (far) remote all of the time. Having read
> that only the Server Master Client could start the
> core shared apps (conf room, team room,.. ones) it
> seems to create a real problem as this Master Client
> cannot be used through SSH/X11 isn't it !? Any trick
> ?

How are you launching the SMC: via ant run-smc or src/scripts/runsmc?
You should use the latter. It starts up a headless X server (Xvfb) on display :1
and directs the SMC to use that to bring up its (invisible) window. runsmc also tells
Java3D to not render anything (for better performance).

micheldenis
Offline
Joined: 2007-12-10

I am just doing what the doc says for this nightly-build [b]binary [/b]kit:

"Start the Server Master Client:
The Server Master Client allows you to start applications from the Shared Apps menu. These applications will be shared by all users.
To start the Server Master Client, run the following command as root:
# /opt/lg3d-wonderland/bin/wonderland-smc.sh "

There's no "src/" here ...

Also how could core shared apps be started from an [b]invisible [/b]window ?

-michel

paulby
Offline
Joined: 2003-06-13

For issue #2, we still strongly recommend websart for all deployments, even testing. The nightly builds include the webstart jars so its relatively easy to deploy. I usually just put a link in /var/www (or wherever the root of your webserver content is) to the directory in wonderland containing the webstarts jars.

We use wonderland over VPN regularly without any special setup, none of the ports we use are firewalled in our local network. Perhaps your local IT group has a different setup for VPN users ? The wonderland ports are documented in this firewall doc on the wiki http://wiki.java.net/bin/view/Javadesktop/ProjectWonderlandFirewall

Rgds

Paul

micheldenis
Offline
Joined: 2007-12-10

Hi Paul,

Our IT teams said it should be ok with the VPN access for Wonderland. No special set up needed.
But I will ask again.
And try the Webstart as soon as I can some time.

Thanks,
-michel

paulby
Offline
Joined: 2003-06-13

Hi Michel,

The server that runs smc needs to be able to start an X server, this should be possible on a machine without a graphics card as the smc x server is rendering to in memory images not a frame buffer. Have you tried starting smc in the WL account on the server ?

In terms of deployment we strongly encourage the use of webstart, this ensures that the client
and server software is always in sync and the webstart deployed clients already have the default server details in the login dialog.

Rgds

Paul

micheldenis
Offline
Joined: 2007-12-10

Hi Paul,

Thanks for your reply. Taking each issue one after the other:

[b]Ref. Issue#1:[/b]
As I described, this Wonderland environment needs to be started from someone remotely connected to the server (this will be the more typical production environment for Wonderland .. think at Amazon EC2 hosting many WL's.
I started (remotely using SSH/X11) the WL voicebridge then the WL server then the WL smc master client on the server-- all remotely .. of course the smc client window never pops up, and as a consequence we cannot access the menus to start these central shared apps. See messages at the end of this reply.
Isn't it a short shell script to start these central apps, in SSH/X11 mode ?

[b]Ref. Issue#2:[/b]
Deployment is one thing and for sure JWS will be the suggested mode in deployment/production, but each thing at a time: first one needs testing of the system. For testing we just use the downloaded server and client software-- like anyway some advanced users will want to do too in the future.
While my WL client can access without problem my "local" WL server, I cannot switch from the local WL server to the remote "wonderland.france" WL server, through corporate VPN. I tried several options/alternatives available in the login window and tabs. Based on your experience and knowledge of WL, and considering the specific case described above, please could you say which options need to be chosen, which port number (if any) is mandatory to indicate, etc... ?

[b]Ref. Issue#3:[/b]
I read the reply from Jonathan.
From a practical perspective, does it mean that Solaris clients all need to be configured specifically for WL ? If yes then I need to write something in the coming user docs ?

Many thanks in advance !
-michel

----------------------
[b]Appendix: copy of SMC log:[/b]
# /opt/lg3d-wonderland/bin/wonderland-smc.sh
Buildfile: /opt/lg3d-wonderland/ant/run.xml

run-smc:
[java] ******* Forcing voicebridge.enabled to false
[java] Java 3D [dev] 1.5.2-pre1-0711150059-experimental 15 Nov 2007 00:59:02 PST

[java] Java 3D: Cache AutoCompute Bounds, accelerates getBounds() enabled
[java] CameraManager.changeCameraMode(), current = ATTACHED
[java] launch external command: [/opt/lg3d-wonderland/bin/ffsetup, ./data/Wonderland/test/appshare]
[java] NoopPipeline.getGraphicsConfig()
[java] NoopDrawingSurfaceObject constructed
[java] NoopDrawingSurfaceObject.getDrawingSurfaceObjectInfo: window = null
[java] May 12, 2008 10:09:29 PM org.jdesktop.lg3d.wonderland.darkstar.client.ChannelController initCommunications
[java] FINE: I am the master client
[java] May 12, 2008 10:09:29 PM org.jdesktop.lg3d.wonderland.scenemanager.AssetDB setDBSystemDir
[java] FINE: AssetDB SystemDir = //.wonderland-smc/
[java] May 12, 2008 10:09:31 PM org.jdesktop.lg3d.wonderland.darkstar.client.ChannelController$WonderlandClientListener receivedMessage
[java] CONFIG: Checking protocol versions
[java] May 12, 2008 10:09:31 PM org.jdesktop.lg3d.wonderland.darkstar.client.ChannelController$WonderlandClientListener receivedMessage
[java] CONFIG: Server version 1.7_0
[java] May 12, 2008 10:09:31 PM org.jdesktop.lg3d.wonderland.darkstar.client.ChannelController$WonderlandClientListener receivedMessage
[java] CONFIG: Local version 1.7_0
[java] May 12, 2008 10:09:32 PM org.jdesktop.lg3d.wonderland.config.common.WonderlandConfigUtil writeUserConfig
[java] INFO: Writing wonderland USER configuration file: //.wonderland-smc/config/AvatarModelConfig.xml
[java] May 12, 2008 10:09:33 PM org.jdesktop.lg3d.wonderland.scenemanager.avatar.AvatarConfigurator getDefaultAvatarInfo
[java] INFO: Loading default avatar : [type=MALE],[bodyParts=[Brow, Brow2, Eye_L_B, Eye_L_Blue, Eye_R_B, Eye_R_Blue, FacialHair_, FacialHair_5, Glasses, Glasses1, Hair, Hair4, Hand_L, Hand_L1, Hand_R, Hand_R2, Head_, Head_3, LowerArm_L, LowerArm_L2, LowerArm_R, LowerArm_R1, Shoulder_L, Shoulder_L2, Shoulder_R, Shoulder_R1, Torso_, Torso_Sweater, UpperArm_L, UpperArm_L1, UpperArm_R, UpperArm_R1, UpperBody_, UpperBody_1]],[sharedMaterials=[SkinShader_White, EyesBrownShader, ShirtShader]],[materialColors=[ShirtShader, #353c99, PantsShader, #cf0a18, ShoesShader, #a92fc6, GlassesShader, #502661, HairShader, #67f9ff, FacialHairShader, #309347]]
[java] ******* Forcing voicebridge.enabled to false
[java] May 12, 2008 10:09:33 PM org.jdesktop.lg3d.wonderland.config.common.WonderlandConfigUtil getInputStream
[java] WARNING: Error loading config file //.wonderland-smc/config//apps-solaris/apps-smc.xml : /.wonderland-smc/config/apps-solaris/apps-smc.xml (No such file or directory)
[java] May 12, 2008 10:09:33 PM org.jdesktop.lg3d.wonderland.config.common.WonderlandConfigUtil getInputStream
[java] INFO: Loading wonderland configuration file: /opt/lg3d-wonderland/config/apps-solaris/apps-smc.xml
[java] May 12, 2008 10:09:33 PM org.jdesktop.lg3d.wonderland.config.common.WonderlandConfigUtil getInputStream
[java] WARNING: Error loading config file //.wonderland-smc/config/PlacemarkConfig-localhost-1139.xml : /.wonderland-smc/config/PlacemarkConfig-localhost-1139.xml (No such file or directory)