Changes for page WOLips-Eclipse beginner mistakes and questions
Last modified by Ray Kiddy on 2010/02/27 14:51
From version 135.1
edited by Ray Kiddy
on 2010/02/27 14:51
on 2010/02/27 14:51
Change comment:
add info about setting runtime parameters that are already set by WO
To version 133.1
edited by Johan Henselmans
on 2007/06/20 04:14
on 2007/06/20 04:14
Change comment:
There is no comment for this version
Summary
-
Page properties (2 modified, 0 added, 0 removed)
Details
- Page properties
-
- Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. kiddyr1 +XWiki.johanhenselmans - Content
-
... ... @@ -1,68 +1,51 @@ 1 1 This document tries to catch the errors that every beginner seems to have to go through before reaching Eclipse/WOLips nirvana. The path is narrow and slippery, but thou shalt be rewarded.... 2 2 3 - {{toc}}{{/toc}}3 +=== The first most common error: === 4 4 5 - =Commonerrors=5 +Eclipse/WOLips does not run properly in java 1.4.2. 6 6 7 - ==The firstmost commonerror:==7 +Run it using **JavaVM1.5**. 8 8 9 - Eclipse/WOLips doesnot run properlyin java1.4.2.9 +Only Way: **1.5**. 10 10 11 -Run it using **JavaVM1.5**. 12 - 13 -Only Way: **1.5**. 14 - 15 15 **One more time: 1.5** 16 16 17 -How to get eclipse running with Java1.5? 13 +==== How to get eclipse running with Java1.5? ==== 18 18 19 -go to /Applications/Utilities/Java/J2SE 5.0/Java Preferences. Select J2SE5.0 15 + go to /Applications/Utilities/Java/J2SE 5.0/Java Preferences. Select J2SE5.0 20 20 21 21 [[image:JavaRunTimeApplicationSettings.png]] 22 22 23 -== The second most common error == 19 +=== The second most common error === 24 24 25 -=== I can not get help to start in my browser, things work flakey === 21 +==== I can not get help to start in my browser, things work flakey ==== 26 26 27 -{{tip}} 28 -The following is somewhat out of date - in general terms it is still true but (as of mid-Feb 2009) Eclipse 3.4(.1) is the required version for (nightly and stable) WOLips, and WOLips nightly is around build number (3.4.)5676. 23 +Eclipse 3.2.2 is a big, big project. It uses lots of frameworks. Sometimes these frameworks are already in some way available in your environment, but they are old versions, that do not do the expected thing in Eclipse. I had the experience that the help did not start in the browser. If that happens to you, remove all the jars of which you are not sure why they are there in /Library/Java/Extensions. You do not have to remove things like frontbase.jar, postgresql.jar etc. 29 29 30 - {{/tip}}25 +This is actually fixed in Eclipse 3.3 (Eclipse reads first it's own paths, and then the system paths), but WOLips does not support Eclipse3.3 yet. 31 31 32 - Eclipse3.3 is a big, big project. It uses lots of frameworks. Sometimes theseframeworks are already in some way available in your environment, but they are old versions, that do not do the expected thing in Eclipse. I had the experience that the helpdidnotstartin the browser. If that happens to you, remove all the jars of which you are not sure why they are there in /Library/Java/Extensions. You do not have to remove thingslikefrontbase.jar, postgresql.jaretc.27 +=== The third most common error === 33 33 34 - Thisshould actually fixed in Eclipse3.3 (Eclipse reads first it'sown paths,andthenthesystempaths), butWOLipssupports Eclipse3.3only in the nightlybuilds. For 3.2.2 you should use the stable build.29 +==== WOLips does not behave like you describe. (Use nightly) ==== 35 35 36 - ==The thirdmost common error==31 +WOLips updates often. And although there is a stable version, the nightly version is where it's at. It is used in production by the wonderful people from MDimension who develop WOLips and other WebObjects developers. If something breaks in nightly, it gets fixed immediately. They depend on it themselves. 37 37 38 - === WOLipsoeshavelikeyou describe.(Use nightly onlyon3.3)===33 +http:~/~/webobjects.mdimension.com/wolips/nightly/ should be in your Eclipse update site, under Help->Software Update->Find and install->Search for new features to install 39 39 40 - WOLipsupdates often.Thereis a stable version, (4118) that should be used on Eclipse 3.2.2,thenightly version iswhere it'sat now for 3.3 (Officially released 29thof june 2007). It is used in production by the wonderful people fromMDimensionwho develop WOLips and otherWebObjects developers. If something breaksin nightly, it gets fixed immediately. They depend on it themselves.35 +=== The fourth most common error === 41 41 42 - [[http://webobjects.mdimension.com/wolips/nightly/]] shouldbein yourEclipseupdatesite,under Help->SoftwareUpdate->Findandinstall->Searchfornewfeaturestoinstall37 +==== I can not install the projects I built, the WOLips install does not work, strange things happen. (be admin) ==== 43 43 44 - ==The fourth mostcommon error==39 +Allthough we all know that we should not run as admin, for installing Eclipse you'd better be. If you have installed Eclipse on one of the common places, or it has been installed for you, than the permission from the Eclipse folder will prevent you to install WOLips and other plugins. Make sure that, if you are installing plugins, You are allowed to do so. 45 45 46 -=== I can not install the projectsI built, the WOLips installdoes not work, strange thingshappen. (beadmin)===41 +==== More admin problems ==== 47 47 48 - Allthough we all know that we should not run as admin,forinstallingEclipseyou'dbetterbe.IfyouhaveinstalledEclipseon oneofthecommonplaces,orthasbeeninstalled foryou,thanhepermissionfromtheEclipsefolderwillpreventyouto installWOLips andotherplugins.Make surehat,if youareinstallingplugins,You areallowedtodoso.43 +If installing your frameworks does not work, than it might be that you are running as a plain user, not admin user. The WOLips ant install by default tries to install in /Library/Frameworks, and Apps in /Library/WebObjects/JavaApplications. As a plain user you should not have permission to write there. 49 49 50 - Ifyou are working on a Mac where multiple userswill need touseEclipse, you haveto change Eclipse's permissionsbecause it will not allow other people to install features, even if they are in the admin group.45 +=== User questions === 51 51 52 - More adminproblems47 +==== Why don't I see all my files? ==== 53 53 54 -If installing your frameworks does not work, than it might be that you are running as a plain user, not admin user. The WOLips ant install by default tries to install in /Library/Frameworks, and Apps in /Library/WebObjects/Applications. As a plain user you should not have permission to write there. 55 - 56 -= User questions = 57 - 58 -== I created a component but I don't see it in the Components folder == 59 - 60 -When you create a new component, it will put the component into the highlighted folder in the Package Explorer. For example, if the current highlighted folder is the project name, the component will be created in the top-level folder of the project. So you will find your component there and you can move it to the Components folder. 61 - 62 -So when you create a new component, make sure that you highlight the Components folder, or right-click on the Components folder and select New->Component, it will be created into the good folder. 63 - 64 -== Why don't I see all my files? == 65 - 66 66 Not all the files are presented, some are filtered away. In Package Explorer (In WOLips pespective, the upper left window), go to the right corner of that window, there is a caret. Under this caret, there is a Filter option.Click on it to see what get's filtered away. 67 67 68 68 [[image:filters.png]] ... ... @@ -71,7 +71,7 @@ 71 71 72 72 [[image:FilterProperties.png]] 73 73 74 -== Where did all my code go? == 57 +==== Where did all my code go? ==== 75 75 76 76 Suppose you suddenly ended up with something like this: 77 77 ... ... @@ -87,75 +87,69 @@ 87 87 88 88 [[image:chooseperspective.png]] 89 89 90 -== I have the right perspective, but it is all screwed up. == 73 +==== I have the right perspective, but it is all screwed up. ==== 91 91 92 -That happens. A lot, if you are inexperienced. And even if you are experienced. Eclipse does some things inadvertently, and as it does not conform to the Apple Interface guidelines, you might press something that has an other effect in Eclipse. 75 +That happens. A lot, if you are inexperienced. And even if you are experienced. Eclipse does some things inadvertently, and as it does not conform to the Apple Interface guidelines, you might press something that has an other effect in Eclipse. 93 93 94 -Do not worry: there is a menu button, Windown->Reset Perspective that will give you the original settings back. 77 +Do not worry: there is a menu button, Windown->Reset Perspective that will give you the original settings back. 95 95 96 -== Which file from which project am I editing? == 79 +==== Which file from which project am I editing? ==== 97 97 98 -If you open a lot of projects at the same time, you'll sometime find yourself editing a few Session.java or localizable.strings files at the same time. How can you see which file from what project you are editing? There is a simple trick for that: in the Package Explorer window, click on the icon with the two arrows on it. From now on, if you select another file in the editor window, you'll be directed to that file in the project in Package Explorer. 81 +If you open a lot of projects at the same time, you'll sometime find yourself editing a few Session.java or localizable.strings files at the same time. How can you see which file from what project you are editing? There is a simple trick for that: in the Package Explorer window, click on the icon with the two arrows on it. From now on, if you select another file in the editor window, you'll be directed to that file in the project in Package Explorer. 99 99 100 100 [[image:SeeFileinProject.png]] 101 101 102 -== Another app is running than I expected: == 85 +==== Another app is running than I expected: ==== 103 103 104 -Running an app works a bit different from running an app in XCode. 87 +Running an app works a bit different from running an app in XCode. 105 105 106 -Normally you select the project in the Package Explorer, goto to the contextual menu (via right click), then click Run WOApplication. you can also go to the Run menu. Or to the Run icon. 89 +Normally you select the project in the Package Explorer, goto to the contextual menu (via right click), then click Run WOApplication. you can also go to the Run menu. Or to the Run icon. 107 107 108 108 Don't suppose you are running the app you are running because you selected the project and pressed the run button in the toolbar. It will run the last application you have run, no matter what you have selected in the package explorer. You have to do a "run as", select your program and then you might get your app. 109 109 110 -== I want to run my app with some other arguments. == 93 +=== I want to run my app with some other arguments. === 111 111 112 -The way eclipse works, it saves a set of arguments in which your app has run. This set of arguments have some default settings, depending on which type of application you are running. You can save these arguments in your project, for later use. 95 +The way eclipse works, it saves a set of arguments in which your app has run. This set of arguments have some default settings, depending on which type of application you are running. You can save these arguments in your project, for later use. 113 113 114 -== Changing the Launch arguments: == 97 +==== Changing the Launch arguments: ==== 115 115 116 -Select Project in Package Explorer, from menu choose Run->Run... , from contextual menu choose Run As->Run 99 +Select Project in Package Explorer, from menu choose Run->Run... , from contextual menu choose Run As->Run 117 117 118 118 [[image:LaunchArgs1.png]] 119 119 120 -You'll get into the create,manage and run configurations window. If there are any launch configurations available in your projects, you will already see them here. If there aren't any, a new one will be created. Normally the proper settings for a WOApplication are all in place, if you have created the application from the contextual menu. See the tutorials.103 +You'll get into the create,manage and run configurations window. If there are any launch configurations available in your projects, you will already see them here. If there aren't any, a new one will be created. 121 121 122 - Note that ifyouareoverriding aparameter supplied by WebObjects,such as WOPortorWOAutoOpenInBrowser,then youneedtoadd theparametersettingsin theArgumentstab thatyouseeabove.Forxample, you can add"-WOPort55555 WOAutoOpenInBrowserNO". BUT, youalsoeedtounchecktheseentries inthe "WO" tababove.If you do uncheckthem,your suggestions may be ignored.105 +Normally the proper settings for a WOApplication are all in place, if you have created the application from the contextual menu. See the tutorials. 123 123 124 -By default these settings are stored in the workspace, not in the project. If you want to store them in the project, you have to change the settings under the "Common" tab, from "local" file to "shared file", and you can save it then in your project for future use. 107 +By default these settings are stored in the workspace, not in the project. If you want to store them in the project, you have to change the settings under the "Common" tab, from "local" file to "shared file", and you can save it then in your project for future use. 125 125 126 126 [[image:Launchsaving.png]] 127 127 128 -== I want to open EntityModeler in a new window, so it does not get in the way of WOLips == 111 +==== I want to open EntityModeler in a new window, so it does not get in the way of WOLips ==== 129 129 130 130 There is a setting in the WOLips preferences, which will get your EOModel started in a separate EntityModelere window: 131 131 132 132 [[image:OpenEntityModelerInNewWindowAnnot.png]] 133 133 134 -== I see all that magic typing with code completion going on. How do you do that? == 117 +==== I see all that magic typing with code completion going on. How do you do that? ==== 135 135 136 -The shortcut is C ontrol-space on the Mac, by default. It is also known as contextual assist.119 +The shortcut is CMD-space on the Mac, by default. It is also known as contextual assist. 137 137 138 -Actually, it is real magic. The trick is that it works in a contextual way. So the program knows what kind code can be expected where. For instance, if you are inside the bindings of a WOComponent, it will know which bindings are there. Just press C ontrol-Space, and you will get the possible endings.121 +Actually, it is real magic. The trick is that it works in a contextual way. So the program knows what kind code can be expected where. For instance, if you are inside the bindings of a WOComponent, it will know which bindings are there. Just press CMD-Space, and you will get the possible endings. 139 139 140 140 [[image:ContextualContentAssist.png]] 141 141 142 - {{warning}}125 +==== Which shortcuts are available? ==== 143 143 144 -Please note that Control-Space is also the key combo for Spotlight. You need to either change the key combo for Eclipse (Preferences->General->Keys) or for Spotlight (System Prefences->Spotlight). 145 - 146 -{{/warning}} 147 - 148 -== Which shortcuts are available? == 149 - 150 150 I don't know. It depends on the plugins you are running. Fortunately, there is a shortcut to end all shortcuts: 151 151 152 -cmd-shift-l= show the shortcuts in a popup-window. Pressing cmd-shift-l one more time will show you all the shortcuts via the preferences. 129 +cmd-shift-l= show the shortcuts in a popup-window. Pressing cmd-shift-l one more time will show you all the shortcuts via the preferences. 153 153 154 154 Some general Eclipse shortcuts: 155 155 156 156 cmd-1 = Quickfix: suggest you a fix for your errror 157 157 cmd-e = quick switch to other open documents 158 -cmd-space = completion, also known as content assist. This one screws up with the standard settings for Spotlight, which are also cmd-space. Some have tried to move cmd-space to something else in Eclipse, but that does not seems to be picked up everywhere. Better replace Spotlight to something else. 135 +cmd-space = completion, also known as content assist. This one screws up with the standard settings for Spotlight, which are also cmd-space. Some have tried to move cmd-space to something else in Eclipse, but that does not seems to be picked up everywhere. Better replace Spotlight to something else. 159 159 160 160 Some shortcuts that are available from WOLips (gracefully donated by Mike Schrag): 161 161 ... ... @@ -172,33 +172,3 @@ 172 172 F3 = go to declaration 173 173 174 174 Another nice overview of shortcuts that Edgar Klein sent me can be found here: [[http://eclipse-tools.sourceforge.net/Keyboard_shortcuts_(3.0).pdf]]. It can be even printed out on one double page, so you can put it above your bed. 175 - 176 -== I have the choice of doing a WOApplication or a WOnderApplication, which one should I use ? == 177 - 178 -If you use WOLips/Eclipse 3.2, or if you use a WOLips 3.3 from before December 2007, the layout for the WOApplication and for the WOnder Application was quite different. Starting in recent (December 2007 and later) builds of WOLips, the layout is the same ("WebObjects Application" use the "Wonder" layout), the only difference between them is that the Wonder-type application and framework will link to the Wonder frameworks (ERJars and ERExtensions), Application.java will extend from ERXApplication and Session.java will extend from ERXSession. 179 - 180 -If you are using a old build of WOLips, you should use the Wonder layout, you just need to remove the references to ER if you don't use Wonder. 181 - 182 -== If I right-click on an folder and select "New", I don't see "EOModel" or "WOComponent" as options. == 183 - 184 -Make sure that your current perpective is "WOLips", if you are in the "Java" or "J2EE" perpective, all WebObjects-related file types are not available. 185 - 186 -== Component Bindings are Showing Errors, but No Error Is Present == 187 - 188 -This can occur for example where you are overriding ##valueForKey(..)## and so the component editor is not able to know that a keypath is valid. In this case add ##~/~/VALID## at the end the association and Eclipse will stop taking this to be a bad binding. An example follows; 189 - 190 -{{noformat}} 191 - 192 -SomeString : WOString { 193 -value = foo.bar; //VALID 194 -} 195 - 196 -{{/noformat}} 197 - 198 -== Classpath Order == 199 - 200 -App 201 -Non-App-Projects 202 -Non-Apple-Framework jars 203 -Apple-Framework jars 204 -normal jars (everything not named Foo.framework/../Foo.jar)