Re: Java version check and auro-jre download (was Re: J2EE)
On 9/4/2013 9:34 AM, markspace wrote:
On 9/3/2013 2:14 PM, Richard Maher wrote:
On 9/4/2013 4:35 AM, markspace wrote:
On 9/3/2013 6:00 AM, Richard Maher wrote:
Richard was/is talking Applets as usual and am quite happy to be told
that the syntax for the PARAM tag OBJECT tag combo is not what I've
quoted.
Doctype and everything else you posted is irrelevant to your problem.
So what exactly *is* "relevant" here in your opinion fuck-knuckle? Your
resume? What ensemble you've chosen today? Mirror mirror on the wall?
I
just checked: the <applet> tag is deprecated in HTML 4.01 but was
removed entirely in HTML 5. So it definitely matters.
Did anyone apart from your ignorant, incompetent arse mention the APPLET
tag here?
Do you not see the quoted "PARAM tag OBJECT tag combo" reference above???
For full details of what I *AM* doing see below for those who care about
facts. Needless to say the OBJECT/PARAM tags are, and continue to be
fully supported in htmlN and "markspace" continues to be the incompetent
twat that would shame a more talented troll into suicide. No wonder you
don't use your real name you walking fucking personality disorder.
Anyone else seen Oracle Java documentation along the lines of: -
http://download.java.net/jdk8/docs/technotes/guides/jweb/applet/applet_deployment.html
You're not really trying, are you?
Trying to get away from your unwanted and unwarranted advances? Yes!
It's not that I'm not a little flattered but I'm a confirmed
heterosexual and happily married so I have to decline your advances, at
least at this stage. (1)
Are you sure you're not Twisted or Mentifix posting under a different
name? Because whatever frequency you're vibrating at doesn't involve
any software engineering, and doesn't have anything to do with Java or
applet deployment. If you're not (purposefully) trolling us, you might
want to slow down, take some time off, consult with some colleagues in
person, etc. to see if you can actually work out what's really bugging
you. It's not something we can solve here.
I tell you what, why don't you Lew, Eric, and Thomas from c.l.js (and
your ilk) download a copy of GrindR (or TrollR) for your smart phones?
Then you can hook-up in a public-convenience somewhere and an wax anal
about your new script that trawls Usenet for spelling errors that you
can spend the next 8hrs correcting? "Oooh Thomas, you haven't said
anything on-topic for weeks!". "I know markspace, but your ability to
place you head up your arse at the slightest challenge inspires me! You
da Man! Shute 3 is free Bitch?".
***JUST LEAVE NORMAL PEOPLE ALONE!***
As someone who can't afford official support, I tolerate the torrent of
inane drivel that pours out of Usenet from the orifices of toss-pots
like you. It's worthwhile 'cos sometimes competent people like Arne,
Quoll, and Patricia find the time and sympathy to help me out. And for
that I'm very, very grateful!
But fuck with me again and I'll go feral and track you down you prick. I
just don't have the time for it! Therefore I undertake to never respond
to any of your posts. Please pay me the same courtacy.
Regards Richard Maher
PS. The KIWIs just kicked your arse Larry you fucking loser! Loot at
Balmer at Microsoft and do the right thing. Let Java live and escape
your ego and the incompetence of those you employ to stroke!
PPS. Maybe markspace should create a new App called ReflectR? Wherever
you are in the world, it will always tell you where you are and if
you're up for it, (And not a single other soul on the radar!" Just
imagine the narcissistic frenzy that can take place after you've re-read
your posts here 10 times?
Real World: -
These Mosilla people really, really, rock and kick arse! Just look at
Larry's pox of JNLP and APEX and see what they're doing with App
Launching - Breathtaking!
(Maybe Ellison should hook-up with Balmer and talk about the old days?)
Tier3Client.js: -
**
* Copyright (c) Richard Maher. All rights reserved.
*
* Tier3Client class bridges JavaScript and Applet
* functionality.
*/
function Tier3Client(application,
codeBase,
port,
maxBuf,
successHndlr,
failureHndlr,
hostCharSet,
sslReqd,
handshake,
classpath,
idleTimeout,
tabMailboxSize,
verbosity)
{
if (arguments.length < 6) {
throw new Error("Insufficient arguments for Tier3Client");
}
if (typeof successHndlr != "function" || typeof failureHndlr !=
"function") {
throw new Error("The success/failure handler parameters must be
functions");
}
if (!navigator.javaEnabled()) {
alert("You must enable Java Applets in your browser\n" +
"before you can successfully access this page");
throw new Error("Java Applets are not enabled for browser");
}
var archiveName = "tier3Client.jar,";
var className = "tier3Client.Tier3Application.class";
this.application = application;
this.codeBase = codeBase;
this.port = port;
this.maxBuf = maxBuf;
this.successHndlr = successHndlr;
this.failureHndlr = failureHndlr;
this.hostCharSet = (hostCharSet == undefined || hostCharSet
== null) ? "ISO-8859-1" : hostCharSet;
this.sslReqd = (sslReqd == undefined || sslReqd
== null) ? "N" : sslReqd;
this.handshake = (handshake == undefined || handshake
== null) ? "Tier3Logon" : handshake;
this.classpath = (classpath == undefined || classpath
== null) ? "tier3Logon.jar" : classpath;
this.idleTimeout = (idleTimeout == undefined || idleTimeout
== null) ? 0 : idleTimeout;
this.tabMailboxSize = (tabMailboxSize == undefined ||
tabMailboxSize == null) ? 100 : tabMailboxSize;
this.verbosity = (verbosity == undefined || verbosity
== null) ? Tier3Client.WARNING : verbosity;
archiveName += classpath;
var appletId = "Tier3__" + this.application + "_Applet";
var idTaken;
try {
idTaken = document.getElementById(appletId);
}
catch (err) {};
if (idTaken != null) {
throw new Error("Tier3 Client already registered for " +
this.application);
return;
}
var appletParams = [{"name":"archive",
"value":archiveName },
{"name":"codebase", "value":codeBase
},
{"name":"code", "value":className
},
{"name":"java_version", "value":"1.7*"
},
{"name":"mayscript", "value":"true"
},
{"name":"scriptable", "value":"true"
},
{"name":"codebase_lookup", "value":"false"
},
{"name":"java_status_events","value":"true"
},
{"name":"permissions", "value":"sandbox"
},
{"name":"cache_option", "value":"no"
},
{"name":"APPLICATION",
"value":application },
{"name":"PORT", "value":port
},
{"name":"MAXBUF", "value":maxBuf
},
{"name":"HOSTCHARSET",
"value":this.hostCharSet },
{"name":"SSLREQD",
"value":this.sslReqd },
{"name":"HANDSHAKE",
"value":this.handshake },
{"name":"IDLETIMEOUT",
"value":this.idleTimeout },
{"name":"TABMAILBOXSIZE",
"value":this.tabMailboxSize},
{"name":"VERBOSITY",
"value":this.verbosity }];
var startParam = 0;
var objectTag = "<object ";
if (/Internet Explorer/.test(navigator.appName)) {
objectTag +=
'classid="clsid:8AD9C840-044E-11D1-B3E9-00805F499D93" ';
} else {
objectTag +=
'type="application/x-java-applet" ' +
'archive="' + codeBase + archiveName + '" ';
startParam = 1;
}
objectTag += ' width= "0" height= "0" id="' + appletId + '">';
for (i=startParam; i<appletParams.length; i++){
objectTag += '<param name ="' + appletParams[i].name + '" ' +
'value ="' + appletParams[i].value + '">';
}
objectTag += "</object>";
var appletDiv = document.createElement("div");
document.body.appendChild(appletDiv);
try {
appletDiv.innerHTML = objectTag;
this.chan = document.getElementById(appletId);
}
catch(err) {
this.chan = null;
appletDiv.parentNode.removeChild(appletDiv);
throw new Error("Tier3 unable to load applet for " +
this.application + ": -\n" +
(err.description||err.message));
};
if (this.chan == null) {
throw new Error("Tier3 was unable to initialize the applet for
" + this.application);
}
(function(chan) {
var POLLINTERVAL = 250,
MAXPOLLCNT = 80,
retryCnt = 0,
dejaVu = false;
chan = chan;
var appletLoad = function(){
if (window.console) console.log("in onLoad status is " +
chan.status );
if (dejaVu) return;
dejaVu = true;
try {
if (!chan.isAuthorized()) {
throw new Error("Tier3 User Authentication
unsuccessful");
}
}
catch(err) {
if (window.console) console.log("Tier3 unable to load
applet: " + (err.description||err.message));
chan.setAttribute("id",null);
chan.parentNode.removeChild(chan);
chan = null;
failureHndlr.call(null, application, "Tier3 unable to
load applet for " + application + ": -\n" +
(err.description||err.message));
}
if (chan) {
successHndlr.call(null, application);
}
}
var appletError = function(){
if (window.console) console.log("in onError ");
}
var waitForAppletDOM = function() {
var appletStatus = ((chan.status||undefined) == undefined)
? 0 : chan.status;
if (window.console) console.log("in waitForAppletDOM type
of status is " + typeof appletStatus);
switch (Number(appletStatus)) {
case 1:
chan.onLoad = appletLoad;
chan.onError = appletError;
if (window.console) console.log("case 1");
case 0:
if (window.console) console.log("case 0");
if (++retryCnt > MAXPOLLCNT) {
throw new Error("Exceeded maximum retries for
Applet DOM");
}
setTimeout(waitForAppletDOM,POLLINTERVAL);
break;
case 2:
if (window.console) console.log("case 2");
appletLoad();
break;
case 3:
if (window.console) console.log("case 3");
failureHndlr.call(null, application, "Error
activating Applet");
break;
default:
failureHndlr.call(null, application, "Invalid
Applet status");
}
return;
}
waitForAppletDOM();
})(this.chan);
Tier3Client.applications[this.application] = this;
return this;
}
Tier3Client.FACPREFIX = "T3$";
Tier3Client.MAJVERS = 1;
Tier3Client.MINVERS = 0;
Tier3Client.DEBUG = 0;
Tier3Client.INFO = 1;
Tier3Client.WARNING = 2;
Tier3Client.ERROR = 3;
Tier3Client.FATAL = 4;
Tier3Client.errorPage = "Tier3Error.html";
Tier3Client.logoffPage = "Tier3Logoff.html";
Tier3Client.prototype = {
send:
function(msgBody, callback, async)
{
if (arguments.length < 2) {
throw new Error("Insufficient arguments for
send(msgBody, callback)");
}
if (typeof callback != "function") {
throw new Error("The 'callback' parameter must be a
function");
}
var noWait = true;
if (arguments.length > 2) {
if (typeof async != "boolean") {
throw new Error("The 'async' parameter must be a
boolean");
}
noWait = async;
}
var chan = this.chan;
var callbackArgs = new Array();
var responseCnt = 0;
var i = 0;
var msgCandidate =
{
msgSlotId : -1,
msgSeqNum : -1,
chan : chan,
callback : callback,
callbackArgs : callbackArgs,
dispatcher :
function(responseMsg,
msgSlotId,
msgSeqNum)
{
this.responseCnt++;
this.msgSlotId = msgSlotId;
this.msgSeqNum = msgSeqNum;
callbackArgs[0] = responseMsg;
try {
return callback.apply(this, callbackArgs);
}
catch (err) {
var errMsg = "Error calling callback
routine: -\n";
for (var prop in err) {
errMsg += " Property: " + prop + " Value:
" + err[prop] + "\n";
}
errMsg += " toString() = " + err.toString()
+ "\n";
errMsg += " msgSlotId = " + msgSlotId + "
msgSeqNum = " + msgSeqNum + "\n";
errMsg += " responseMsg = " + responseMsg;
chan.appendConsoleMsg("Client: " + errMsg);
throw new Error(errMsg);
}
},
getMsgSeqNum :
function() {
return this.msgSeqNum;
},
getResponseCnt:
function() {
return this.responseCnt;
}
};
for (i=3; i<arguments.length; i++) {
callbackArgs[i - 2] = arguments[i];
}
return chan.send(msgCandidate, msgBody, noWait);
},
appendConsoleMsg:
function(msg)
{
this.chan.appendConsoleMsg(msg);
}
};
Tier3Client.applications = {};