Erik Hatcher makes a request to get his JavaDevWithAnt project converted from using Ant to Maven:
Ok, a challenge to the Maven or Centipede experts tuning into my blog:
make my JavaDevWithAnt project
build with either. But the trick is that it has to be simpler than
the current Ant build.xml. Believe it or not, I've not (seriously) used
either of these tools. I hear the buzz about these and want to become a
"believer".
I'm all for this as I've created my AppFuse project using his directory structure/build file as a template. I did go down this path to Mavenism already, but gave up before I finished. My problem is I have 15 different 3rd party JARs I use in my project - many testing frameworks and jakarta stuff. And a lot of these are nightly (or personal) builds because there's been some bug fixed, or enhancement added. What I really want is to continue using Ant b/c I think it rocks and it gives me more control over little tasks, but also to use Maven to generate a project site.
The problem with Erik's request is that I'm guessing no one will jump at the opportunity. Maybe, but in reality, no one looks at each others code unless there's a bug, or they need a sample to get started. Too bad - we could really do wonders for the Java Community if we started reviewing each others code. Erik, maybe you could post little snippets of your build file, and we could convert small parts of it. By posting a measly 10 lines, some other coders might be so inclined to help mavenize it. I know this is not how Maven works, but it sure would be nice if using Maven didn't require abandoning Ant.
Tonight I'll be staying up late trying to finish up AppFuse and Struts-Resume. Since the security-example download seems to be getting a lot of traffic (and it's a 15MB download), I should probably try to get these projects into SourceForge and save myself some bandwidth. Who knows if I'll get it done, I'm pretty tired, and it's already 10:00. But what choice do I have - Saturdays are family days, I promised my client that I pump a bunch of new features out on Sunday, and I get to work an 80 hour-week next week to get our first version out at my new job. Ugh, I need a vacation.
I am using Interfaces in my persistence layer, as well as for my Business Delegates. These interfaces are named things like UserDAO
and UserManager
. Their implementations are UserDAOHibernate
and UserManagerImpl
. First off, I don't know that I need interfaces for my business delegates, but they're already in place, so I'm going with it.
What I'm wonder is if my JUnit TestCases should reflect the Interface name, or the implementation name? UserDAOTest.java or UserDAOHibernateTest.java. I like the first one better, but I tend to hard-code information in it so I can call UserDAOHibernate.java
- like the daoType to use. I started out using UserDAOTest because I thought it made more sense - and then it could be used to test all implementations.
Lately, I've been using JUnitDoclet to generate my TestCase skeletons, and it only generates TestCases for concrete classes, not interfaces. Therefore, I've changed to using UserDAOHibernateTest
, which can be a helluva lot to type (and remember) when running TestCases! Here's the Ant command I use to run this test:
ant test-ejb -Dtestcase=UserDAOHibernateTest
And User is a short word! Can you imagine what these suckers will look like when I have an object such as ChangeRequest. Ughh. What do you gents think - I'm all ears.