Re: Moving pages/components out of default packages for WebObjects 5.2.4

From: Mike Kienenberger (mkienen..mail.com)
Date: Wed Mar 07 2007 - 12:41:35 EST

  • Next message: Mike Kienenberger: "Re: Moving pages/components out of default packages for WebObjects 5.2.4"

    Chuck,

    Thanks for your quick response. If you don't know, then probably no
    one else does.

    I guess I could cheat and stick them in something harmless like
    WEB-INF/classes/java/math/* for the time being.

    On 3/7/07, Chuck Hill <chil..lobal-village.net> wrote:
    > I don't have much to offer here. All of my components are in
    > packages. I rarely need to fully qualify the name (only when a class
    > with the same name resides in different packages). My suspicion
    > would lie in how the app is packaged for J2EE deployment and how that
    > interacts with resource location. On that subject I know nearly
    > nothing.
    >
    > Chuck
    >
    >
    > On Mar 7, 2007, at 9:03 AM, Mike Kienenberger wrote:
    >
    > > I hope this is an appropriate question for this list.
    > >
    > > I'm using WebObjects 5.2.4. I'm working with a project originally
    > > developed in 5.0. I've successfully built and deployed the project
    > > as a j2ee application. Now, I'm trying clean up the code.
    > > Originally everything was in the default package. I've used Eclipse
    > > to repackage everything.
    > >
    > > For the most part, I've been successful at this task. I updated the
    > > class entries in the entity plist files, so EOF is working fine with
    > > the new packages.
    > >
    > > However, the page and component classes have me stumped. I've
    > > updated the Resources/*.api files with the fully-qualified class
    > > names, but the application still tries reading the Main.class out of
    > > the default package. I verified this by copying the class back to the
    > > default package, and it was found.
    > >
    > > If I update Application.pageWithName() to fully-qualify the name, then
    > > my pages can be found, but the components aren't.
    > >
    > > return
    > > super.pageWithName(fullyQualifiedPageName(pageName), context);
    > >
    > > private String fullyQualifiedPageName(String pageName)
    > > {
    > > if (null == pageName)
    > > {
    > > pageName = "Main";
    > > }
    > > pageName = "<mypackage>." + pageName;
    > > return pageName;
    > > }
    > >
    > > By using FileMon, I can tell that the file attributes for
    > > Resources\Main.api are queried, but the file is never opened or read.
    > > Resources\Main.wo\Main.html, wod, and woo are all opened and read. I
    > > can also see that the Main.class is read before any of the Main.wo
    > > files are opened.
    > >
    > > If I switch back to the non-fully-qualified name, FileMon shows that
    > > the Main.class is scanned for in a great number of places in
    > > WEB-INF\classes, but not in my own packages:
    > >
    > > WEB-INF\classes\Main.class
    > > WEB-INF\classes\java\lang\Main.class
    > > WEB-INF\classes\com\webobjects\*
    > > WEB-INF\classes\java\math\Main.class
    > > WEB-INF\classes\org\apache\*
    > > and so on.
    > >
    > > This makes me think that I need to configure something to tell WO what
    > > my packages are.
    > >
    > > I've searched through the old archives, but I haven't found anything
    > > that seems relevent:
    > >
    > > http://objectstyle.org/woproject-old/lists/woproject-dev/
    > > 2004/10/0084.html
    > > http://lists.apple.com/archives/webobjects-dev/2006/Sep/msg00196.html
    > > http://lists.apple.com/archives/webobjects-dev/2006/Sep/msg00197.html
    > > http://lists.apple.com/archives/webobjects-dev/2006/Sep/msg00193.html
    > >
    > > I did find useful information reminding me that instance variable need
    > > to be changed from protected to public.
    > >
    > > It also seems like this issue may have been solved for WO 5.3, but
    > > that's not currently an option.
    > >
    >
    > --
    >
    > Practical WebObjects - for developers who want to increase their
    > overall knowledge of WebObjects or who are trying to solve specific
    > problems.
    > http://www.global-village.net/products/practical_webobjects
    >
    >
    >
    >
    >
    >



    This archive was generated by hypermail 2.0.0 : Wed Mar 07 2007 - 12:41:59 EST