Problem starting client with Java 6

open your java control panel (java webstart section)

Jan Blok:
open your java control panel (java webstart section)

Which bit was that the answer to, how to do the ‘direct’ on a Mac, or Server proxy?

On mac, there is no Java control panel, so I assume you mean PC, but I can’t see a Java webstart section?

The ‘Direct Connect’ thing worked great for my client on the PCs, but now I need to know how to do the same thing on the mac.

Thanks,

Rafi

On mac, there is no Java control panel

Oh yes there is!

/applications/utilities/java/j2se 5.0/Java Preferences

That is the control panel

IT2Be:

On mac, there is no Java control panel

Oh yes there is!

/applications/utilities/java/j2se 5.0/Java Preferences

That is the control panel

Hi Marcel,
thank you. I did know about that, but it does not have the same options/settings as the Windows ‘control panel’. There is no ‘Java Web Start’ section that allows you to set it to use ‘direct connect’, unless I am being completely stupid :)

Rafi

Just checked and couldn’t find that setting either…

In Mac OS X you have to open your System Preferences. In network settings > built-in ethernet > Proxies you can set the hosts/domains which will be bypassed from proxy.

Hope this will help.

Christoph:
In Mac OS X you have to open your System Preferences. In network settings > built-in ethernet > Proxies you can set the hosts/domains which will be bypassed from proxy.

Thanks Christoph. I have tried that, as had the IT dept. for the PC’s in the proxy settings, but it still didn’t work. It would only work when all proxy stuff was turned off (but fixed on PCs with the ‘direct connect’ trick…)

Is Servoy Client/Java trying to talk to anything other than the computer that the Servoy Application Server is running on when it first starts up?
I think I tried launching client with no proxies, then switched them back on and was able to carry on using Client…

Rafi

Servoy Client only talks to the server so if you add that to the proxy exclude list (IP AND hostname to be sure) it should work fine. If it doesn’t there’s most probably other software running that is trying to overrule the OS proxies, have you tried with your own mac?

Jan, while you are here :): we have a client that wants to have all traffic going over a proxy server. We have tried to set the Java preferences to use this proxy, but the guy says that the web start client tries to access the (external) server URL directly and that is forbidden. Is there anything we can configure or do we have to wait for “project 80” (does that work in the current beta?).

Thanks
Patrick

The current Servoy version (smart client) cannot work through a proxy, just like any other application can’t.
You will have to wait for 3.5. Project 80 is not in the current beta release, we are working hard on a release that will include it.

…just like any other application can’t.

I told the guys: either you want an application or you don’t. If you want one, you have to let it in. But you know how it goes and obviously so does the dev team. Good to hear we can test that soon. :)

Jan, thanks for your response.
I will have to sit with my clients IT people and have another try.
When there are no proxy settings on Mac, all is fine.
On PCs with Proxies turned ON, but with Java set to use ‘Direct Connect’, it works, but on Macs (last time I tried) with server IP & Name excluded in Proxy, it did not work.
I will post an update tomorrow after some more experimenting.

Rafi.

Hi

Just a note that i too had this issue and was about to try the direct connection to make JRE 1.6 work.

i updated to latest version of java which is 1.6 update 1 and the whole thing worked first go, no changes needed to anything.
:D

Hi all.
I haven’t had a chance to post my results from the other day.
After MUCH testing,on my own Mac, I have still not found a solution. Therefore it isn’t anything extra that is installed on my clients Macs.
I downloaded a product called ‘Charles’ that simultes/acts as a proxy in Java and shows all calls, requests etc. that app.s make.
When I used it with Servoy Client, Client gets stuck at ‘Starting Repository’ and Charles showed the last request was for the ‘rmi-portserver’ from the Servoy Application Server.
I added all IP addresses, host names, domains etc. to be excluded, but still no luck! Java is obviously not obeying the Mac system settings.
Server must be ok settings wise, as all PCs can connect once the ‘Direct Connect’ option is selected in the Windows Control Panel.
Also, on the Macs, if I create a ‘No Proxy’ location to test with (with no proxies set’, Servoy client launches perfectly, and then if I switch the location back to their usual one with proxies on, Client can carry on fine. It is just the connection to the repository that seems to be the issue.
(There is only one solution, so client normally launches straight in to solution without the solution choice dialog)
My Mac is running 10.4.8 with Security Updates.
java version “1.5.0_07”
Java™ 2 Runtime Environment, Standard Edition (build 1.5.0_07-164)
Java HotSpot™ Client VM (build 1.5.0_07-87, mixed mode, sharing)

There is no normal way to install Java 1.6 on a Mac as far as I know…

I REALLY hope someone can help, as this is VERY frustrating. I do not want to have to install 3.5 beta, as my client will not be happy with a beta product running a live system.

If only we could find a way to do the ‘Direct Connect’ PC thing on Macs :(

Thanks,
Rafi.

I assume if this customer has a lot of Macs there is a support contract with Apple in place. Have you considered filing a support call with them? In Particular as apple provides both the proxy setting and the Java version.

Please do NOT install 1.6 pre release of java on mac. I can tell you it will make things worse.

Hi Jan.
They don’t have that many Macs & I don’t know about any support contracts, but they are just down the road from the Regent Street AppleStore in London, so maybe I need to go visit a Genius there to discuss!
I won’t install 1.6 pre-release now, thanks!

Rafi

Hi all,
I have finally solved the problem!!! :D

After all of these things, the answer was staring me in the face.
I actually spent time reading the Servoy Admin Network Setting page, where it says

Network Settings Howto

The RMI start port is the port which the server will try to use to listen for client connections and communication. If this port is already in use, the server will use the next higher available port. This port must be reachable by the client at all times, and thus may not be blocked by a firewall.

The RMI server hostname is the hostname or IP address that clients will be told to connect to. Note that if a hostname is used, it is resolved on the server! This setting must be used if two-way sockets are disabled and the server’s hostname does not resolve to an IP address that is usable for the clients. (An example of this is common with Linux systems, where the server hostname resolves to the IP address 127.0.0.1 on the server, which is an address the clients cannot use to connect to the server). In almost all cases, the setting can be left empty.

That very last bit (in bold) was the key!
For the ‘java.rmi.server.hostname:’, Servoy had defaulted to ‘127.0.0.1’, as I have seen on all my other set ups. BUT, if I cleared it (empty) and made sure the server name is in the exclude list in proxy settings, IT WORKS!!!

I really hope that this helps someone else who gets stuck like I did :)

Thanks for everyone else who replied on this topic.

[Maybe, by default, it should be empty as it states…]

Rafi

Excellent, glad it works fine now!