Connecting Tech Pros Worldwide Forums | Help | Site Map

Eolas patent workaround: Java folks need JavaScript help

Mickey Segal
Guest
 
Posts: n/a
#1: Mar 14 '06
The long-simmering Eolas patent dispute:
http://www.microsoft.com/presspass/p...06EOLASPR.mspx
has led to an optional Microsoft Update:
http://support.microsoft.com/kb/912945/en-us
that creates non-JavaScript problems that can be fixed using JavaScript.

With the Microsoft update installed, Java applets (as well as other content
such as Flash videos) are unable to receive user input until an activating
click or key press. Although this update has not been installed by many
users yet, is expected to be included in a periodic security update, making
it very widespread, possibly as early as today.

For Java applets there is a satisfactory workaround using JavaScript as
detailed at:
www.segal.org/java/HelloPatent/
However, since Java experts are not JavaScript experts, it was not clear
whether our code was written in the best way. Specifically, we'd appreciate
input as to whether we need both of the following lines of JavaScript code
or can get rid of the HEAD part and make a call that includes the file name
to invoke the function. The relevant JavaScript code is:

Between the HEAD tags:
<script src="specifyApplet.js" language="JavaScript"
type="text/javascript"></script>

Where I actually insert the applet:
<script
language="JavaScript"type="text/javascript">getAppletTags();</script>



VK
Guest
 
Posts: n/a
#2: Mar 14 '06

re: Eolas patent workaround: Java folks need JavaScript help



Mickey Segal wrote:[color=blue]
> The long-simmering Eolas patent dispute:
> http://www.microsoft.com/presspass/p...06EOLASPR.mspx
> has led to an optional Microsoft Update:
> http://support.microsoft.com/kb/912945/en-us
> that creates non-JavaScript problems that can be fixed using JavaScript.
>
> With the Microsoft update installed, Java applets (as well as other content
> such as Flash videos) are unable to receive user input until an activating
> click or key press. Although this update has not been installed by many
> users yet, is expected to be included in a periodic security update, making
> it very widespread, possibly as early as today.
>
> For Java applets there is a satisfactory workaround using JavaScript as
> detailed at:
> www.segal.org/java/HelloPatent/
> However, since Java experts are not JavaScript experts, it was not clear
> whether our code was written in the best way. Specifically, we'd appreciate
> input as to whether we need both of the following lines of JavaScript code
> or can get rid of the HEAD part and make a call that includes the file name
> to invoke the function. The relevant JavaScript code is:
>
> Between the HEAD tags:
> <script src="specifyApplet.js" language="JavaScript"
> type="text/javascript"></script>
>
> Where I actually insert the applet:
> <script
> language="JavaScript"type="text/javascript">getAppletTags();</script>[/color]


Shame to California lawyers, shame to California fn greedy academics. I
was watching this circus since the beginning and just cannot believe
they went through with this crap... Macromedia lost the independence
partially cause of it.

Any way: your way is a bit risky because however small your external
script is, it is still possible (on bad connection) that it will not be
loaded and parsed before getAppletTags() call. I would keep all stuff
together in the applet's insertion point:

<script type="text/javascript">
// Applet params separately
// for easier editing:
var width = 130;
var height = 40;
var code = 'Hello.class';
// end of params
var str = '<applet code="' + code
+ '" width="' + width
+ '" heigth="' + height + '"></applet>';
document.write(str);
</script>
<noscript>
<p>Client-side scripting is disabled
or not supported</p>
</noscript>

Mickey Segal
Guest
 
Posts: n/a
#3: Mar 14 '06

re: Eolas patent workaround: Java folks need JavaScript help


"VK" <schools_ring@yahoo.com> wrote in message
news:1142363109.417189.241030@i39g2000cwa.googlegr oups.com...[color=blue]
> Any way: your way is a bit risky because however small your external
> script is, it is still possible (on bad connection) that it will not be
> loaded and parsed before getAppletTags() call. I would keep all stuff
> together in the applet's insertion point:
>
> <script type="text/javascript">
> // Applet params separately
> // for easier editing:
> var width = 130;
> var height = 40;
> var code = 'Hello.class';
> // end of params
> var str = '<applet code="' + code
> + '" width="' + width
> + '" heigth="' + height + '"></applet>';
> document.write(str);
> </script>
> <noscript>
> <p>Client-side scripting is disabled
> or not supported</p>
> </noscript>[/color]

My understanding of Microsoft's change to Internet Explorer is that it
requires not the use of JavaScript per se but rather loading resources
external to the HTML page, which as you point out can be unreliable. For
other reasons we had been generating Java applet tags with JavaScript inside
HTML pages and that didn't protect against this change in Internet Explorer.


VK
Guest
 
Posts: n/a
#4: Mar 14 '06

re: Eolas patent workaround: Java folks need JavaScript help



Mickey Segal wrote:[color=blue]
> My understanding of Microsoft's change to Internet Explorer is that it
> requires not the use of JavaScript per se but rather loading resources
> external to the HTML page, which as you point out can be unreliable. For
> other reasons we had been generating Java applet tags with JavaScript inside
> HTML pages and that didn't protect against this change in Internet Explorer.[/color]

Your understanding is not correct. It is all about the infamous patent
co-owned by University of California and one overly-creative guy. Read
more at:
<http://news.com.com/2009-1023_3-5082004.html>
Also google for "California university media patent"

Note: whoever thinks that a pure idea cannot be patented - wake up and
smell the coffee :-(

There are already some dramatical changes in the US-residing companies.
For example, microsoft.com site doesn't ask you anymore to install
Flash player if you have not it installed. Same for others key players.
Flash and Shockwave is being replaced by images - or require a click to
start animation.

As I'm not a lawyer I cannot advise if your JavaScript workaround is an
escape from the patent:- you better check. If you are outside of the US
I welcome you to place a big applet with raised finger animated by
default on your page. :-|

Mickey Segal
Guest
 
Posts: n/a
#5: Mar 14 '06

re: Eolas patent workaround: Java folks need JavaScript help


"VK" <schools_ring@yahoo.com> wrote in message
news:1142370987.468114.160570@i39g2000cwa.googlegr oups.com...[color=blue]
> Your understanding is not correct. It is all about the infamous patent
> co-owned by University of California and one overly-creative guy. Read
> more at:
> <http://news.com.com/2009-1023_3-5082004.html>[/color]

The nature of the patent dispute is a secondary issue here - the need to
work around whatever Microsoft did is the primary issue. Just assembling
your applet tags using JavaScript is not enough to work around what
Microsoft did; indeed we used to assemble our applet tags using JavaScript
previously for other reasons, and that was not enough to work around this
issue.


RobG
Guest
 
Posts: n/a
#6: Mar 15 '06

re: Eolas patent workaround: Java folks need JavaScript help


Mickey Segal said on 15/03/2006 4:34 AM AEST:[color=blue]
> The long-simmering Eolas patent dispute:
> http://www.microsoft.com/presspass/p...06EOLASPR.mspx
> has led to an optional Microsoft Update:
> http://support.microsoft.com/kb/912945/en-us
> that creates non-JavaScript problems that can be fixed using JavaScript.
>
> With the Microsoft update installed, Java applets (as well as other content
> such as Flash videos) are unable to receive user input until an activating
> click or key press. Although this update has not been installed by many
> users yet, is expected to be included in a periodic security update, making
> it very widespread, possibly as early as today.
>
> For Java applets there is a satisfactory workaround using JavaScript as
> detailed at:
> www.segal.org/java/HelloPatent/
> However, since Java experts are not JavaScript experts, it was not clear
> whether our code was written in the best way. Specifically, we'd appreciate
> input as to whether we need both of the following lines of JavaScript code
> or can get rid of the HEAD part and make a call that includes the file name
> to invoke the function. The relevant JavaScript code is:
>
> Between the HEAD tags:
> <script src="specifyApplet.js" language="JavaScript"[/color]

The language attribute is deprecated so ditch it, keep type.

[color=blue]
> type="text/javascript"></script>
>
> Where I actually insert the applet:
> <script
> language="JavaScript"type="text/javascript">getAppletTags();</script>[/color]

If you mean can you do:

<script src="specifyApplet.js" type="text/javascript">
getAppletTags();
</script>


the answer is no. Wherever an src attribute is specified then:

"If the src has a URI value, user agents must ignore the
element's contents and retrieve the script via the URI."

<URL:http://www.w3.org/TR/html4/interact/scripts.html#edef-SCRIPT>

So I guess strictly speaking you can do it but it won't work in most
(nearly all) browsers. There was a recent thread on this but I can't
find it right now.

However, the element that loads the script doesn't have to be in the
head. The script element that loads the .js file must be before any
script element that calls code in the file, so it may be more convenient
to use (wrapping allowed deliberately):

<script src="specifyApplet.js" type="text/javascript"></script><script
type="text/javascript">getAppletTags();</script>


You may want to supply an argument to getAppletTags() and you only need
the first script element once in the document (before the first call to
getAppetTags()), it doesn't have to be added for every call.


--
Rob
RobG
Guest
 
Posts: n/a
#7: Mar 15 '06

re: Eolas patent workaround: Java folks need JavaScript help


RobG said on 15/03/2006 10:17 AM AEST:
[...][color=blue]
>
> So I guess strictly speaking you can do it but it won't work in most
> (nearly all) browsers. There was a recent thread on this but I can't
> find it right now.[/color]

Here 'tis:

<URL:
http://groups.google.co.uk/group/com...55df2b1ec2f450[color=blue]
>[/color]


--
Rob
The Magpie
Guest
 
Posts: n/a
#8: Mar 15 '06

re: Eolas patent workaround: Java folks need JavaScript help


RobG wrote:[color=blue]
> RobG said on 15/03/2006 10:17 AM AEST:
> [...][color=green]
>>
>> So I guess strictly speaking you can do it but it won't work in most
>> (nearly all) browsers. There was a recent thread on this but I can't
>> find it right now.[/color]
>
> Here 'tis:
>
> <URL:
> http://groups.google.co.uk/group/com...55df2b1ec2f450
>[/color]
Hell, if you're worried about the patent, take the easy way out. Host
your site outside the United States so no-one will give a flying fart
about the stupid thing and you can't get sued.
Mickey Segal
Guest
 
Posts: n/a
#9: Mar 16 '06

re: Eolas patent workaround: Java folks need JavaScript help


"The Magpie" <usenet@mpreston.demon.co.uk> wrote in message
news:dv9hqk$lkp$1$8302bc10@news.demon.co.uk...[color=blue]
> Hell, if you're worried about the patent, take the easy way out. Host your
> site outside the United States so no-one will give a flying fart about the
> stupid thing and you can't get sued.[/color]

The issue is that Microsoft is patching Internet Explorer, so the problem is
not my dealing with the patent it is my dealing with what Microsoft did
because of the patent.

According to Microsoft's workaround page:
http://msdn.microsoft.com/library/de...ng_activex.asp
the workaround to what Microsoft did to Internet Explorer is to "load
controls from external script files".

Some of the code on Microsoft's workaround page does not have a reference to
the external js file in the HEAD code, but if that is the best way to get
the loading started as soon as possible that is OK with me.


VK
Guest
 
Posts: n/a
#10: Mar 16 '06

re: Eolas patent workaround: Java folks need JavaScript help



Mickey Segal wrote:[color=blue]
> The issue is that Microsoft is patching Internet Explorer, so the problem is
> not my dealing with the patent it is my dealing with what Microsoft did
> because of the patent.[/color]

A clear understanding of patent may give you an answer of how to deal
with it - because in the reality nothing is changed internally in
objects, one just need to fing a way to use them while formally staying
out of the patent.

The relevant MSDN article is written in Esop language, because
Microsoft cannot publically (plus on their own server) call to bypass a
3rd party patent and explain how to do it:- that would be a
milti-billion mistake.

So one needs to read between the lines - plus be aware of the patent
background. Search Google for inspiration ideas.

Closed Thread


Similar JavaScript / Ajax / DHTML bytes