Belongs on list. ---------- Forwarded Message ----------
Subject: Tapestry stuff Date: Saturday 15 January 2005 04:18 From: "David Leangen" <[EMAIL PROTECTED]> To: "Hedhman, Niclas" <[EMAIL PROTECTED]> Hi, Niclas, Some discussion about the hangman example. Remember that eventually all this will be useful for documenting the project. :-) First topic: Spindle -------------------- I may be difficult to get Spindle working with the current structure after all. I took a quick look at the Spindle code, but decided that I really don't want to go there. My major concern right now is putting together a productive environment. One of the promises of Tapestry is SoC, where HTML designers can work independently of the developers. My environment is Eclipse. When we eventually hire employees for this project (if I can get the funding together), we will be using Eclipse. I very much suspect that many other people use Eclipse for their development as well. I think that you and Steve are in the minority of people who don't use IDEs. Also, one of Tapestry's selling points is that the project Spindle exists. So, I think it would be a great loss to not support it. The question is, how? I agree with you that their project layout sucks. Personally, I'm not willing to go into their code. I guess all I can suggest at this point is to use their layout as a first step, then during the build copy over the files to a more Metro-type layout. This adds an extra layer to the process, but it doesn't force anybody to do anything. People who don't want to use Spindle can directly use the Metro layout. People who do want to use Spindle can just add this extra step when preparing for the build. Does this sound like the right way to go? Second topic: Project structure ------------------------------- Could you explain your motivation for how you divided up the code into the various projects? To make it a little easier for you, I'll first explain what my interpretation is, and you can just correct me if I'm wrong. First, the etc dir. I noticed that the web.xml file is here. I understand the motivation for keeping this separate from the source. This provides a kind of decoupling, so that different projects could use a different web.xml. However, is this really realistic? In really, isn't the web.xml already coupled to the project, so it doesn't really matter if it goes with the source? Where did you read about not having the web.xml file with the source? Can you point me to this article? etc/deliverables Why is the web.xml file not in deliverables? What is the "conf" dir for? There is nothing there right now, so I'm wondering what your intent is. Now, the src dir. Why did you put the web stuff in the src dir and not in etc or somewhere else? I think the rest is ok. Third topic: Division of projects --------------------------------- There are 5 (!!) projects for this one demo. I understand the api. That's fine. I suspect that "game" is simply the "impl" part of this "module" (can I call it that?). View is fine. What I'm not sure I understand is the "block" and "app" projects. Why are these separate? Also, block seems to be empty... Can it just be deleted? App only contains one conf file. Is it really necessary to have a completely separate project for just one file? Fourth topic: Deliverables -------------------------- In the view, why do you create both a JAR and a WAR? Ok, that's about it for now. Sorry for all these many questions. Like I say, I will be using Tapestry extensively. I should be able to become a resource for others who plan to do the same. So, hopefully the time you spend with me will pay off! Thanks, Niclas!! Dave -------------------------------------------------------
