» tagged pages
» logout

(Feed found, click Add Page to syndicate.) Error finding feed, please try again » Find feed title

A Blog Page allows you to add entries, for news or other time sensitive postings

(Login required to save to your tagged pages.)
(or Cancel)

Make further edits, (or Cancel)

(Login required to save to your tagged pages.)
(or Cancel)

(Editing anonymously: to be credited for your changes, login or register a new account)

Change Page Permissions? Changing these permissions will adjust who can modify this page.

Anonymous (change)
Swik Users (change)
(or Cancel)
Upload an image from your computer:
or Copy an image from a URL:
or Erase the current icon:
Icon Preview:

or Cancel

Erase java2script? The contents of java2script page and all pages directly attached to java2script will be erased.

or Cancel

(Editing anonymously: to be credited for your changes, login or register a new account)

other page actions:
java2script

java2script

Tags Applied to java2script

2 people have tagged this page:

Java2Script is an open source Eclipse JDT plugin that provides a way of translating Java code into JavaScript.

Lots of Java code (such as an algorithms library or UI widgets library) can be reused in JavaScript through J2S.

sorted by: recent | see : popular
Content Tagged java2script

Java2Script Desktop

You may already know Web OS, like eyeOS. In fact, those web OSs are web desktop + web services. And there are lots of web desktop styles. And here we introduce Java2Script Desktop, basing on Java2Script SWT technology:

Click to view screen shot in full mode

There are four elements on the above screen shot: Tray Bar (left upper corner), Task Bar (left side), Quick Shortcut Bar (bottom), Window.

This is a prototype design for Java2Script Desktop. Please check it out at http://izuz.net/gtalk/ . Hope to hear your feedback.

java2script: Java2Script Pacemaker Blog

Cappuccino and Objective-J

Today, I came up with 280 Slides, a web presentation design editor. I was shocked by its pretty looking Mac-like UI at the first glance.

From an interview to 280 Sliders developer, I learned to know that Cappuccino is the framework behind the product. And Objective-J language is introduced so they can port Apple’s Cocoa framework. Cocoa is a framework based on Apple’s own language Objective-C. In fact, 280 Slides’ UI looks like Apple’s Keynotes. And the 280 Sliders’ developers are former Apple developers. Cappuccino parses Objective-J files, which are with file extension .j, convert to JavaScript codes and executes them on the fly.

So, another cross compiler, Objective-C to JavaScript. It is quite worthy for further digging.

And digging into sources, I find that it uses lots of images to make up the whole UI, includes button, scrollbar, window borders and other components. And besides *.j and *.js files, there are some *.plist and *.sj files. *.sj use the same syntax as normal JavaScript. But from the sources, I guess they are compiled and mixed from *.j. Besides the core Objective-J.js, AppKit.sj, Foundation.sj and SlideKit.sj are three important files.

And it is great to hear the news that Cappuccino and Objective-J will be open-sourced at http://objective-j.org/ in the near future.

java2script: Java2Script Pacemaker Blog

Java2Script 1.0.0 Final Release

Here comes Java2Script 1.0.0 final release!

Please visit http://j2s.sourceforge.net/ for more information.

Feature List
==========

Java2Script Core
—————-
1. Object oriented JavaScript simulator is introduced
2. JavaScript ClassLoader is built inside
3. Eclipse JDT based Java to JavaScript compiler, support Java 1.4 and Java 5 features, including generic, enums, static imports, enhanced loops
4. Support incremental building for Java projects
5. Support Hotspot JavaScript swapping for debugging
6. Support most classes in java.lang.*, java.utils.* and others packages
7. Support native JavaScript through @j2s* Javadoc in Java sources
8. Support creating Java2Script projects by wizard, including Servlet project
9. Support loading *.js from Firefox Add-on.
10. Support Eclipse 3.1.*, 3.2.* and 3.3.*

Java2Script SWT
—————
1. Eclipse SWT 3.1 API is ported for JavaScript in modern browsers, Firefox, Internet Explorer, Opera, Safari
2. Window manager is built inside
3. Support UI blocking fow SWT’s Shell and Dialog
4. Support SWT deffered layout
5. Support detecting font size change in Firefox

Java2Script AJAX
—————-
1. HttpRequest/AJAX is introduced for both Java and JavaScript
2. Simple RPC API is introduced to call back Java server, which supports Cross Site Scripting
3. Support dynamic class loading for both Java and JavaScript
4. Support Java reflection (early implementation)

Java2Script JUnit
—————–
1. Support JUnit tests both Test Case and Test Suite in text mode.

Java2Script Example
——————-
1. Google Talk in JavaScript ( http://demo.java2script.org/gtalk/ )
2. SWT Control Examples ( http://demo.java2script.org/controls/ )

For more feature detailed description, please visit:
http://j2s.sourceforge.net/features.html

java2script: Java2Script Pacemaker Blog

Java and JavaScript

Today, I came up with the idea of “Orto: Java in JavaScript“. Well, it is not “Java to JavaScript”, it is “Java in JavaScript”. It is said that java.lang.Thread is supported. But as there is no downloads available, and it is not open source, so I could not test it.

Supporting Thread programming in JavaScript would be cool. Once I spent some time trying to figure out how to support Thread in Java2Script project, but I failed. But I managed to program execute codes asynchronously by using SWT’s Display#timerExec(int, Runnable) or Display#asyncExec(Runnable) instead. So even though I can not use Thread#sleep, I still can do lots of thread things.

And Orto seems to be in a different way to support Thread, the codes it generated look like these:

case 117:orto246[orto247-2]={high:(~orto246[orto247-2].high)
&0xffffffff,low:(~orto246[orto247-2].low+1)&0xffffffff};
if(orto246[orto247-2].low==0){orto246[orto247-2].high++;
orto246[orto247-2].high&=0xffffffff;
orto246[orto247-2].low=0;
}break;

Compiling to Java code into byte-code like script, and loading and running these scripts in “JVM” should be a way to support all Java things. In my opinions, all locks and threads are re-implemented. Performance should be a problem. I know that there is another project called XML11, which is also trying to compile Java codes into JavaScript byte-code.

And recently, I also noticed that there was a debate about GWT Ext or Ext GWT. You may already know that GWT is about compiling Java to JavaScript and Ext JS is a HTML/CSS+JavaScript based UI library. It is interesting to see people combine these two technologies together. And it is more interesting that putting GWT before Ext JS and putting Ext JS before GWT is two different things. You may want ot read Didier Girard’s discussion for a clear idea.

About 2 years ago, when I started Java2Script project, I had to think about its programming model. At that time, people began to wrap existed JavaScript library in Java way. I called it “JavaScript for Java (JavaScript4Java)”, which is quite different from my “Java to JavaScript (Java2Script)”. So “2″ and “4″ is totally different, right?

In fact, I do know that Java and JavaScript are two different language. The reason that I chose Java as the source and JavaScript as the target is that Java is most beautiful and most used language while JavaScript is a world wide supported language. And I am familiar and love Java language. So I created Java2Script. I do believe that C#-to-JavaScript, Ruby-to-JavaScript or Other-to-JavaScript is not a big deal for me. But I may not have energy to make a similar compiler.

Java and JavaScript may be hotter and hotter. Good to see that more and more people is linking Java and JavaScript together.

java2script: Java2Script Pacemaker Blog

Java2Script 1.0.0: Java to JavaScript Compiler & AJAX SWT

Java2Script (Also known as J2S: http://j2s.sourceforge.net/ ) Pacemaker provides an Eclipse Java to JavaScript compiler plugin and an implementation of JavaScript version of Eclipse Standard<sep/>

Eclipse: del.icio.us/tag/eclipse

Eclipse RAP 1.0 Comes

Eclipse RAP team has just released its 1.0.

The RAP project enables developers to build rich, Ajax-enabled Web applications by using the Eclipse development model, plug-ins with the well known Eclipse workbench extenstion points, JFace, and a widget toolkit with SWT API (using qooxdoo for the client-side presentation). The project has graduated from incubation and released its 1.0 release.

In fact, Eclipse RAP and Java2Script have a lot in common. Both are based on SWT API and have goals to provide ways for developers to share the same base of code for products that deploy to the web and the desktop. Here is overview of Eclipse RAP. And you can also read Java2Script’s overview for comparisons.

And you can also check out Eclipse RAP demo to get more details. It’s interesting to see that RAP and Java2Script have 2 very similar demos: RAP’s RWT Control Demo and Java2Script’s SWT Control Examples.

More discussion may be found at ajaxian.com.

Related link: InfoWorld Eclipse offers AJAX server

java2script: Java2Script Pacemaker Blog

Java2Script Gtalk on Opera Mini 4

It’s amazing to see that Java2Script’s Google Talk get run on Opera Mini 4 inside a mobile phone.

Here is Opera Mini 4’s simulator for you to test its CSS/JavaScript/AJAX compatibilities:
http://www.operamini.com/beta/simulator/

Here are screenshots:
opera-mini-j2s-gtalk-small.png

Zoom in to get a clear look:
opera-mini-j2s-gtalk-zoom-in.png

Login and connect:
opera-mini-j2s-gtalk-connecting1.png

Now we are in:
opera-mini-j2s-gtalk-logined-small.png

Zoom in to get a clear look on friend list:
opera-mini-j2s-gtalk-friend-list.png

But Java2Script Gtalk does not get run as totally correct. It fails to maintain normal connection back to Gtalk proxy server. So after a few seconds, the proxy server closes the connection. Maybe Java2Script Gtalk may fix this problem later. And also I think Opera Mini team may improve its AJAX supports in the near future so nothing need to be modified.

java2script: Java2Script Pacemaker Blog

Java2Script 1.0.0 RC Released

FYI:
Java2Script 1.0.0 RC Released! Please visit Java2Script’s home page for more updated information.

And Java2Script 1.0.0 Final Release will be available at the end of this September.

New and Noteworthy
==================
Java2Script Core
—————-
1. Eclipse 3.3 supported
2. Replace Java builder with Java2Script builder for Java2Script project
3. Hotspot supports for debugging.
4. Bug fixes.

Java2Script SWT
—————
1. Bug fixes.

Java2Script AJAX
—————-
1. Update Simple RPC from 1.0.0 to 1.0.1
2. Bug fixes

Java2Script Example
——————-
1. Google Talk’s Java2Script copy updated ( http://demo.java2script.org/gtalk/ ).

java2script: Java2Script Pacemaker Blog

Compressed JavaScript on Apache HTTPD Server

As Java2Script’s library size is getting huger and huger, loading *.js is a critical job for Java2Script. And I decide to output compressed *.js to save loading bandwidth.

In httpd.conf or .htaccess file, add the following:

<IfModule mod_deflate.c>
# Netscape 4.x or IE 5.5/6.0
BrowserMatch ^Mozilla/4 no-gzip
# IE 5.5 and IE 6.0 have bugs! Ignore them until IE 7.0+
BrowserMatch \bMSIE\s7 !no-gzip
# Sometimes Opera pretends to be IE with "Mozila/4.0"
BrowserMatch \bOpera !no-gzip
AddOutputFilterByType DEFLATE text/css text/javascript application/x-javascript
Header append Vary User-Agent
</IfModule>

You can read more about mod_deflate document.

In my experiments, I found that IE 6.0 had a strange bug in loading compressed *.js, so IE 6.0 was fed with huge raw *.js.

In normal bandwidth connection with Firefox 2.0, it takes about 16 seconds for the first time loading and running Java2Script application, and it takes about 6 seconds for later running (Cached *.js are applied). From the log file, there are about 20~30 *.js/*.css/*.png/*.gif hits, which counts up to about 150k. Thanks for the mod_deflate of Apache HTTPD Server. It saves a lot of bandwidth on those maybe 600k+ *.js files. And I considered such Java2Script application loading or running acceptable.

By the way, long waited Java2Script Milestone 5 release is coming. Lots of new features are added.

Update: For more details, please also read article “Compressing and Deploying JavaScript“.

java2script: Java2Script Pacemaker Blog

Java2Script’s GTalk

I spent about three days writng an SWT based Google Talk client. And the client used Smack Jabber library, which has simple APIs. As writing the client, I kept the code compatible with Java2Script, which means that I can use the latest Java2Script daily release to pack it as a web servlet application and deploy it as rich internet application (RIA). Here is snapshot of Java2Script version of Google Talk:

Java2Script's GTalk

And here is the online Java2Script’s GTalk.

And because Java2Script’s SimpleRPC supports Cross Site Script, the above application can be loaded from any pages by adding the following HTML

Launch GoogleTalk

to your page.

Or you can just copy the above “javascript:…” part (without quotes) and paste it to address bar and go. You will get a Google Talk client (pure JavaScript) in your page (this page or other pages). This “javascript:…” part is considered as A Link An Application (ALAA).

By digging about Google Talk on Digg.com, I found that Google Talk Gadget on Google’s personalized homepage was really hitting the latest news.

Enjoy it.

Update:

The Java2Script’s Google Talk sources are available at SVN repository now:
http://j2s.svn.sourceforge.net/viewvc/j2s/trunk/demos/org.java2script.demo.gtalk/

And you can also download j2s-1.0.0-m5-gtalk.zip, unzip it and deploy gtalk.war to your Java servlet container.

java2script: Java2Script Pacemaker Blog

Java2Script 1.0.0 M5 Released

The long waited 1.0.0 M5 Release (Once supposed to be 1.0.0 Release Candidate) finally came.
To download and install Java2Script M5, please check
http://j2s.sourceforge.net/download.html
and
http://sourceforge.net/project/showfiles.php?group_id=155436
Regard,
Zhou Renjian
===============
1.0.0 M5 (March 16, 2007)
New and Noteworthy
==================
Java2Script Core
—————-
1. Use Apache Harmony JRE sources instead.
2. Improved ClassLoader now supports multiple threads loading from multiple sites.
3. Lots of ClassLoader bugs are fixed to make sure *.js or *.css are correctly loaded or applied.
4. ClassLoader’s class loading is notified in a half-transparent messagebar.
5. Library *.js can be loaded from Firefox Add-on.
6. Java2Script inner console’s color is now black on white.
7. Java2Script related projects can be created by wizards.
8. Java2Script compiler is refactored a little.
9. More *.js optimized configuration for Apache HTTPD server, including gzip encoding.
Java2Script SWT
—————
1. Window manager is introduced.
2. Shell’s maximizing and minimizing are improved.
3. Increasing or decreasing font size in Firefox is supported.
4. Widgets are improved.
5. SWT lazy loading is built inside.
Java2Script AJAX
—————-
1. Simple RPC protocol is modified
2. Simple RPC now supports Cross Site Script.
Java2Script Example
——————-
1. Java2Script version of Google Talk ( http://demo.java2script.org/gtalk/ )

PATCH UPDATE:

If you download or install Java2Script 1.0.0 M5 after March 21, 2007, you should ignore this patch.

If you download or install Java2Script 1.0.0 M5 before March 21, 2007, you may need to make a patch following the instructions:

Because of a not tested bug that the packed Common.z.js in plugins/net.sf.j2s.lib_1.0.0(.v510/.v520)/j2slib/org/eclipse/swt/widgets/ does not contain TabItem.js, which will result in errors of “$wt.widgets.TabItem is not a constructor” when loading Java2Script SWT application that uses TabFolder widget.

To fix up the problem, please download the patch, and unzip it, replace the old Common.z.js with the new Common.z.js.

If you also download the sources, please replace net.sf.j2s.lib/build/build.xml with the new build.xml.

If you have already installed Java2Script Firefox Add-on, please replace **Path to your Firefox profiles**/extensions/{d60b46a9-bfe3-4b22-8844-07089202e0e6}/chrome/content/
java2script/1.0.0-m5/org/eclipse/swt/widgets/Common.z.js with the new one. In Windows, Common.z.js may be in **System Drive**:\Documents and Settings\**Your Login Name**\Application Data\Mozilla\Firefox\Profiles\**Unique String**\extensions\{d60b46a9-bfe3-4b22-8844-07089202e0e6}\chrome\content\
java2script\1.0.0-m5\org\eclipse\swt\widgets\.

I feel very sorry about the inconveniences.

March 21, 2007

java2script: Java2Script Pacemaker Blog

Instantiations Donated WindowBuilder Pro to Java2Script for Development

Instantiations is giving back to the community by donating its products for use by developers of Open Source projects. For more information, please visit http://www.instantiations.com/company/opensource.html

Java2Script is mainly focusing on converting SWT desktop applications. And WindowBuilder Pro is sure a professional GUI designer to help developers building SWT desktop applications. As from earlier trials ( http://j2s.sourceforge.net/screenshots.html#swt-designer ), I found that SWT Designer is a great tool to help designing SWT applications. In order to improve our development efficiencies, I decided to apply for a copy of WindowBuilder Pro instead of limited trial versions. And Eric Clayberg of Instantiations is very kind to give a quick reply and is very generous to donate WindowBuilder Pro to Java2Script team.

Thanks Instantiations Inc. I think WindowBuilder Pro will help us working more efficiently and improving Java2Script plugin to a higher quality level.

java2script: Java2Script Pacemaker Blog

Now Java2Script Supports Eclipse 3.3 M7

Follow instructions of “setup Java2Script environment from Subversion repository“, and checkout branches 3.3 from https://j2s.svn.sourceforge.net/svnroot/j2s/branches/

Hope to hear your feedbacks.

java2script: Java2Script Pacemaker Blog

Page 1 | Next >>
Username:
Password:
(or Cancel)