Last modified by David Avendasora on 2008/07/01 16:52

From version 6.1
edited by David Avendasora
on 2008/06/25 09:21
Change comment: There is no comment for this version
To version 14.1
edited by David Avendasora
on 2008/06/25 10:14
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -1,4 +1,8 @@
1 -1. Create a new WOApplication named "WebStartJNLPTest" in Eclipse with a package of "your.app"
1 +This tutorial will help you get a new Java Client or Direct To Java Client Application setup in Eclipse/WOLips and get it building properly.
2 +
3 +1. Create a new WebObjects Application
4 +[[image:Picture 9.png]]
5 +1. Name it "WebStartJNLPTest" in Eclipse with a package of "your.app" {{note title="Note!"}}If you change the Project name or packages, then you'll need to make additional changes in the subsequent steps.{{/note}}
2 2  1. Modify the Main.html by adding:
3 3  
4 4  {{code title="Main.html Changes"}}
... ... @@ -23,21 +23,23 @@
23 23  
24 24  {{/code}}
25 25  
26 -1. Create a WOComponent named JavaClient
30 +1. Create a WOComponent named "JavaClient".
31 +[[image:Picture 11.png]][[image:Picture 10.png]]
32 +This WOComponent will be what passes the specifics about your client-side application to WebObjects.
27 27  1. Modify the JavaClient.html replacing the contents with:
28 28  
29 -{{code title="JavaClient.html"}}
35 +{{code title="JavaClient.html Contents"}}
30 30  <WEBOBJECT NAME=JavaClientComponent></WEBOBJECT>
31 31  {{/code}}
32 32  
33 -1. Modify the JavaClient.wod file by adding:
39 +1. Paste the following as the contents of the JavaClient.wod file. Feel free to change the applicationName, applicationDescription and vendor parameters to anything you wish.
34 34  
35 35  {{code title="JavaClient.wod Contents"}}
36 36  
37 37  JavaClientComponent: WOJavaClientComponent {
38 38   applicationClassName = "com.webobjects.eogeneration.EODynamicApplication";
39 - applicationName = "WebStartJBNDTest";
40 - applicationDescription = "WebStartJBNDTest";
45 + applicationName = "D2JC WebStart Test";
46 + applicationDescription = "D2JC WebStart Test";
41 41   downloadClientClasses = "noDownloadClientClasses";
42 42   vendor = "My Company";
43 43  }
... ... @@ -44,6 +44,9 @@
44 44  
45 45  {{/code}}
46 46  
53 +{{note title="Note!"}}If you are not creating a Direct To Java Client (D2JC) application, then you will need to replace the applicationClassName parameter (com.webobjects.eogeneration.EODynamicApplication) with the name of your client-side application class. Your non-D2JC client-side Application class *must* subclass EOApplication.{{/note}}
54 +
55 +1. If you didn't add an EOModel file to the project when you created it, do it now. Drop any existing EOModel in the Resources directory, or create one from scratch.
47 47  1. Add the following frameworks to the project build path:
48 48  JavaDirectToWeb
49 49  JavaDTWGeneration
... ... @@ -59,8 +59,13 @@
59 59  JavaJDBCAdaptor
60 60  JavaWebObjects
61 61  JavaWOExtensions
62 -1. Create a ClasspathClient.txt file in the root of the project and paste the following as contents:
63 63  
72 +{{note title="Note!"}}
73 + If you are not creating a D2JC application, then you won't need all of these, but they won't hurt anything either.
74 +{{/note}}
75 +
76 +1. Create a ClasspathClient.txt file in the root of the project and paste the following as contents:{{note title="Note!"}}If you changed the applicaton name in Step 2 above, make sure you change the name of the Client-Side .jar file in the first classpath line below (WebStartJNLPTest.jar). Also be sure to match the case of the project. Client-Side .jar filenames are CamelCase instead of all lowercase as server-side .jar filenames are.{{/note}}
77 +
64 64  {{code title="ClasspathClient.txt File"}}
65 65  
66 66  # ApplicationClass == com.webobjects.eoapplication.client.EOClientApplicationSupport
... ... @@ -89,6 +89,8 @@
89 89  
90 90  {{/code}}
91 91  
106 +This file is only required by the application when it is being launched from within Eclipse.
107 +
92 92  1. Create a javaclientbuild.xml file in root of the project and paste the follwing as contents:
93 93  
94 94  {{code title="javaclientbuild.xml"}}
... ... @@ -151,8 +151,15 @@
151 151  
152 152  {{/code}}
153 153  
154 -1. Right-click on the javaclientbuild.xml file and select "Run As -> Ant Build"
170 +This file is needed to make up for the lack of Java Client application building by the WOLips Incremental Builder. It also copies the client launch scripts into the project so that the application will auto-launch when you run it from within Eclipse. Please follow the [[instructions>>Java Client-WebStart Incremental Build]] for how to create the Java Client Incremental Builder.
171 +
172 +1. If you did not setup the Java Client Incremental Builder, then right-click on the javaclientbuild.xml file and select "Run As -> Ant Build"
173 +[[image:Picture 12.png]]
155 155  1. Right-click on the project and select "Run As -> WebObjects Application"
175 +[[image:Picture 13.png]]
156 156  1. Select your.app.Application as the Application class
157 -1. Copy the Direct Connect URL from the Eclipse console and paste it into your browser. You should get a "click here" link.
158 -1. Click it.
177 +[[image:Picture 14.png]]
178 +1. If you want to actually deploy this application, then you will also need to [[modify the build.xml file>>Java Client-Building]].
179 +This is it. WebStart should automatically download your client application and launch it. If you are creating a D2JC application and did not put an EOModel file in the Resources directory of your project, then you'll see something like this:
180 +[[image:Picture 15.png]]
181 +If you don't want a D2JC application, then you are on your own for creating the user interface for it. Your client-side application can be a command-line or GUI application. If you want a Swing GUI, then I **highly** recommend Florijan Stamenkovic's [[JBND Framework>>http://web.mac.com/flor385/JBND/]]