Update: UltraVNC 1.4.3.6 and UltraVNC SC 1.4.3.6: viewtopic.php?t=37885
Important: Please update to latest version before to create a reply, a topic or an issue: viewtopic.php?t=37864

Join us on social networks and share our announcements:
- Website: https://uvnc.com/
- GitHub: https://github.com/ultravnc
- Mastodon: https://mastodon.social/@ultravnc
- Facebook: https://www.facebook.com/ultravnc1
- X/Twitter: https://twitter.com/ultravnc1
- Reddit community: https://www.reddit.com/r/ultravnc
- OpenHub: https://openhub.net/p/ultravnc

Question about the UltraVNC java viewer

Should you have problems with the JavaViewer, here's the place to look for help or report issues
Post Reply
addison
8
8
Posts: 18
Joined: 2010-05-14 03:21

Question about the UltraVNC java viewer

Post by addison »

Hello there,

I'm trying to use applet to run UltarVNC Java Viewer.
However, I always get the error statement:"Error: Your connection has been rejected.".
The code are as the following:
<APPLET CODE=VncViewer.class codebase="." ARCHIVE=VncViewer.jar WIDTH=400 HEIGHT=300>
<param name=HOST VALUE=192.168.1.11>
<param name=PORT VALUE=5900>
</APPLET>


Yeah, It's a simple demo.
After searching the Internet, I made some changes on the VNC Server side.
In the "Query on incoming connection", I adjust the Default "Refuse" action to "Accept".
Retest the applet, the VNC Server side pop-up a window saying,
"WinVNC has received in incoming connection from:

"192.168.1.10"

Would you like to Accept or Reject? "
I absolutely click Accept, but it cannot work!
When the timeout, the error appears again.
Any idea?

thanks
Last edited by addison on 2010-06-01 12:14, edited 2 times in total.
B
800
800
Posts: 2338
Joined: 2009-09-09 14:05

Re: Question about the UltraVNC java viewer

Post by B »

You just need to <b>uncheck</b> "Display Query Window" to turn off the feature, as far as I see.
addison
8
8
Posts: 18
Joined: 2010-05-14 03:21

Re: Question about the UltraVNC java viewer

Post by addison »

With no luck!

If I uncheck the "Display Query Wndow" and with the "Default action" value is "Accept", I only got the error message "Error: Your connection has been rejected."
Last edited by addison on 2010-06-02 01:07, edited 1 time in total.
B
800
800
Posts: 2338
Joined: 2009-09-09 14:05

Re: Question about the UltraVNC java viewer

Post by B »

I think that actually confirms that the real problem has nothing to do with that setting. It's respecting your choice as to whether to ask for confirmation or not, but when it actually gets to CONNECTING it fails, either way.

So I would definitely leave it unchecked in your case (unless you need that feature on).

Did you Google the error string? The second hit talks about some registry cleaning that might help you.

http://www.realvnc.com/pipermail/vnc-li ... 38496.html
Nicola - Assistenza also e-mailed me directly with the registry
settings that could
cause this error.

Although my registry did not contain the authenticate key, and all the
other
setting "appeared" normal, it was indeed a registry problem.

I had to un-register the VNC service, Uninstall VNC, and then remove
the ORL
registry keys from Current_User and Local_Machine's software keys.
Then I
re-installed the latest version of VNC, and viola, it works.
See also [post=40921][/post] among other places.

As you've been testing your custom app, you've probably got some stuff left from previous VNC installations. I suggest you uninstall and clean out the registry. Good luck!
addison
8
8
Posts: 18
Joined: 2010-05-14 03:21

Re: Question about the UltraVNC java viewer

Post by addison »

Thank you B,

I'm choking here.
I have tried a lot methods, but still cannot get the java viewer run, really shame!
Any suggestions will be appreciated.
Check out the testing code(following http://sc.uvnc.com/javaviewer/index.html):
<OBJECT
ID='VncViewer'
classid = 'clsid:8AD9C840-044E-11D1-B3E9-00805F499D93'
codebase = 'http://java.sun.com/update/1.4.2/jinsta ... on=1,4,0,0' WIDTH = 1280 HEIGHT = 1056 >
<PARAM NAME = CODE VALUE = VncViewer.class >
<PARAM NAME = CODEBASE VALUE = 'http://localhost:8080/applet' >
<PARAM NAME = ARCHIVE VALUE = VncViewer.jar >
<PARAM NAME = 'type' VALUE = 'application/x-java-applet;version=1.4'>
<PARAM NAME = 'scriptable' VALUE = 'false'>
<PARAM NAME = PORT VALUE=5900>
<PARAM NAME = HOST VALUE=ID:678>
<PARAM NAME = ENCODING VALUE=Tight>
<PARAM NAME = REPEATERHOST VALUE=192.168.1.13>
<PARAM NAME = REPEATERPORT VALUE=443>
<PARAM NAME = USESSL VALUE=1>
<PARAM NAME = TRUSTALL VALUE=1>
<PARAM NAME = PROXYHOST VALUE=192.168.1.10>
<PARAM NAME = PROXYPORT VALUE=5900>
<PARAM NAME = PROXYUSER VALUE=>
<PARAM NAME = PROXYPASS VALUE=>
<PARAM NAME = PROXYPASS VALUE=>
<COMMENT>
<EMBED
type = 'application/x-java-applet;version=1.4' \
CODE = VncViewer.class \
ARCHIVE = VncViewer.jar \
CODEBASE = '.' \
WIDTH = 1280 \
HEIGHT = 1056 \
PORT =5900 \
ENCODING =Tight \
REPEATERHOST = 192.168.1.13 \
REPEATERPORT =443 \
USESSL = 1 \
TRUSTALL = 1 \
HOST = ID:678 \
PROXYHOST = 192.168.1.10 \
PROXYPORT = 5900 \
PROXYUSER = \
PROXYPASS = \
scriptable = false \
pluginspage ='http://java.sun.com/products/plugin/index.html#download'>
<NOEMBED>
</NOEMBED>
</EMBED>
</COMMENT>
</OBJECT>

My own repeater running on IP:192.168.1.13, while a VNC server on 192.168.1.10.

Did I missing something?
Because I only got this error message "Network Error: Connection reset".

Thank you for your time.
B
800
800
Posts: 2338
Joined: 2009-09-09 14:05

Re: Question about the UltraVNC java viewer

Post by B »

Obvious question, then... using that same target VNC server, if you simply browse to its internal Javaviewer, can you connect?


Whoa whoa whoa, wait a second. The standard Javaviewer does <b>not</b> have repeater support! Someone recently made a modified Javaviewer and published it here that <b>does</b> have repeater support. Is that the Javaviewer you're using? 'Cause otherwise, that's why you're not connecting.
addison
8
8
Posts: 18
Joined: 2010-05-14 03:21

Re: Question about the UltraVNC java viewer

Post by addison »

Hello B,

Good news.
I can use java viewer connect vnc server directly, using a browser! :-D
However, as you mentioned that "standard Javaviewer does not have repeater support! " But I still give it a try.

When testing it on FireFox, 3s later the page will print the following message:"Network error: server name unknown: ID:12345".

At the same time, a notice dialog pop-up on the UltraVNC icon tray, which said:
"Remote Connection
Could not connect using ID:12345! "


Then I used the following commad line to test the VncViewer.jar.

java -classpath VncViewer.jar VncViewer HOST ID:12345 PORT 0 REPEATERHOST 192.168.1.13 REPEATERPORT 443 USESSL 1 TRUSTALL 1 ENCODING zlib

Referenced from [topic=12950][/topic]

I got this error statement:
java.net.UnknownHostException: ID:12345
at java.net.PlainSocketImpl.connect(Unknown Source)
at java.net.SocksSocketImpl.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at java.net.Socket.<init>(Unknown Source)
at java.net.Socket.<init>(Unknown Source)
at RfbProto.<init>(RfbProto.java:216)
at VncViewer.prologueDetectAuthProtocol(VncViewer.java:408)
at VncViewer.connectAndAuthenticate(VncViewer.java:339)
at VncViewer.run(VncViewer.java:181)
at java.lang.Thread.run(Unknown Source)
Network error: server name unknown: ID:12345
After searching the source code, I have noticed that the related codes are
"rfb = new RfbProto(host, port, this, null, 0); // Modif: troessner - sf@2007: not yet used"
,
in the vncviewer.java line 408.

While in RfbProto.java line 207,
RfbProto(String h, int p, VncViewer v, String repeaterHost, int repeaterPort) throws IOException {
viewer = v;
host = h;
port = p;

if (repeaterHost != null) {
sock = new Socket(repeaterHost, repeaterPort);
doRepeater(sock,host,port);
} else {
sock = new Socket(host, port);
}
The java viewer indeed have repeater support, Yes?
So what settings should I do to use a browser to connect via repeater?


Any suggestions?

thanks[/url]
Last edited by addison on 2010-06-08 21:00, edited 1 time in total.
B
800
800
Posts: 2338
Joined: 2009-09-09 14:05

Re: Question about the UltraVNC java viewer

Post by B »

Again, the standard Javaviewer in all the VNCs does not have repeater support, regardless of what you might see in the code. But there are at least two workarounds!

1. Someone named nxnlvz posted some mods that might enable repeater support at
[post=70097][/post]


2. And <b>another</b> equally experimental way to try and go is a new "Modified Repeater" project -- it fools all VNC clients, including Javaviewer, into communicating via a repeater, without the clients themselves needing repeater ID support:

[topic=18035][/topic]


So there are at least two ways to do it, both workable but in an early state.


NOTE TO MODS: Forum won't let me post this -- <i>"You cannot make another post so soon after your last; please try again in a short while."</i> -- yet it's now been <b>many</b> minutes since my last, and only, post today. Perhaps not coincidentally it was in the "Forum Screwy" thread. (If this is a spam prevention measure, it's <b>completely</b> counterproductive!) Ah, seems to be a Time Clock failing -- see [post=70393][/post]

Looks like I can get this posted now.
addison
8
8
Posts: 18
Joined: 2010-05-14 03:21

Re: Question about the UltraVNC java viewer

Post by addison »

Great thanks to B!
REALLY REALLY appreciate what you did!


OK, I finally got it work last night. cheers! :-D
I also got mad by this:
-- "You cannot make another post so soon after your last; please try again in a short while." --
I referenced from this page. [topic=12950][/topic]
Thanks 'nxnlvz'.

But the file transfer function isn't stable, I think.
Sometimes it may release the following notice:
"WARNING: Remote Drive unavailable".

When testing on another PC and call the web server, the file list in the dialog is blank.
It said:" ERROR!: No Local Drivers are Readable"
The error massage on the applet tab is:"java.lang.NullPointerException"


many thanks
nxnlvz
8
8
Posts: 8
Joined: 2010-05-12 00:22

Re: Question about the UltraVNC java viewer

Post by nxnlvz »

I have not really used the Java viewer as an applet in a browser but only standalone. So far the problem with the remote drives has not shown up. I would think it has something to do with the browser permissions maybe. I will give it s shot and see but this is one of the reasons I don't like applets anyway. Than and the tendency to browse away from the page! Maybe putting together a WebStart version would be better.

Any Interest in this?

-nxn
B
800
800
Posts: 2338
Joined: 2009-09-09 14:05

Re: Question about the UltraVNC java viewer

Post by B »

Yes, but I'd really love to see the applet version perfected too, and incorporated into the main VNC releases. The reason, obviously, is that it's so much easier to deploy to the end user when they can browse to a page and have the app magically start. Thanks for your work on this.
addison
8
8
Posts: 18
Joined: 2010-05-14 03:21

Re: Question about the UltraVNC java viewer

Post by addison »

Agreed B.

Hello nxnlvz, Thank you for your sharing. :-D
I'm not sure the meaning of "WebStart", can you explain it?

Okay, Last time I tested java applet with repeater working at mode I and the result is good.
Looking at this page http://sc.uvnc.com/javaviewer/index.html, it seemed that it's possible to have java viewer using an ID,connecting server via repeater.
Does the current java viewer and repeater/distributer has model II or SSL support?

Thank you for your time!
nxnlvz
8
8
Posts: 8
Joined: 2010-05-12 00:22

Re: Question about the UltraVNC java viewer

Post by nxnlvz »

This is a very simplistic way of looking at it but....
applet is pretty much a java program that runs within the confines of a web browser. It has all the limitations and restrictions as you would normally see associated with this. The main restriction that is usually encountered is that by default it may only communicated with the server that it was loaded from. The other is that if the person browses away from the page or closes the browser then the context that it was running is lost and it kills the applet. One last annoyance is that in general there is not great way to do local storage for things like saving profiles or making icons on the desktop or showing an icon in the status bar.

webstart is more or less a standalone java application that is launched from a web page. It runs in its own space and has most if not all of the privileges as such.

There is no reason that instead of a applet being served up by the UVNC server or repeater that a webstart application could not be served up instead. It would operate more closely to the way the native windows application acts as well.

The code changes that I posted were just very quick hacks to make it work for me. If I did any more I would also make it a little prettier, add more dialogs and window buttons and bring it up to the current Java standard. There is also a thought in the back of my mind to incorporate the Java RDP client libs.

:idea:
Strangely enough. The basic code with UI modifications could also be used for an Android application. This has been on my TODO list since I use a Nexus as my phone and always seem to need to access something.

-nxn
B
800
800
Posts: 2338
Joined: 2009-09-09 14:05

Re: Question about the UltraVNC java viewer

Post by B »

Dude! (Or madam.) Did you say RDP? That would terrific. I'm often sick of the slowness of RFB, and have asked the UVNC developers here whether they'd considering adding RDP server support to the next major release. (So far, no.) I realize the Javaviewer is just client side though.

I'm a bit ignorant on Webstart myself; is it typically installed with the JRE that most people would have installed? Because if not, my earlier distinction stands... (that the existing applet model is more universally accessible)
nxnlvz
8
8
Posts: 8
Joined: 2010-05-12 00:22

Re: Question about the UltraVNC java viewer

Post by nxnlvz »

Whoa! not doing the the work to add RDP in to UVNC. That would just be crazy. I just want a more universal client. If Sun/Oracle would be so kind as to open up ALP I would use that instead.

WebStart in included in all java versions since 1.5 I think. In other words it has been around for a while. I will have a version of it done in a few days. In point of fact I am already using for myself but it is ugly and I would be embarrassed. The code is mostly cleaned up but there are some threading and synchronization issues that were in the existing codebase that are making me re-write a few parts. I also want to move it away from AWT for the interface.

It also does not free up the resources correctly when it shuts down. More of less it just closes the socket. Not very nice.

-nxn
Post Reply