Rich--
Addressing the immediate issue first; are the build changes below
"right" relative to how you expect the <build-pageflows> macro to
work? Just looking to get 933 resolved.
Longer term, I totally agree -- having nested <src/> elements is
probably a good way to go. It probably won't be that hard to support
in the AptTask since it just extends Javac.
Eddie
On 9/16/05, Rich Feit <[EMAIL PROTECTED]> wrote:
> ...which is what Eddie suggested in the first place. :) Thanks for the
> correction.
> Rich
>
> Scott Symmank wrote:
>
> >i have not used the apt task, but if it is like <javac, you
> >might consider supporting a <path element
> >
> >
> > <path id="base.path">
> > <pathelement path="${classpath}"/>
> > <fileset dir="lib">
> > <include name="**/*.jar"/>
> > </fileset>
> > <pathelement location="classes"/>
> > </path>
> >
> ><javac destdir="${build}"
> > classpath="xyz.jar"
> > debug="on">
> > <src path="${src}"/>
> >
> >just a thought...
> >
> >-----Original Message-----
> >From: Rich Feit [mailto:[EMAIL PROTECTED]
> >Sent: Friday, September 16, 2005 11:14 AM
> >To: Beehive Developers
> >Subject: Re: beehive 933 issue and <build-pageflows>
> >
> >I think this is happening because our apt task demands that 'srcdir' be
> >the root of all files that should be scanned. The 'srcpath' just
> >identifies individual source roots under the main directory. I think it
> >would actually be nice to be able to use filesets instead of the
> >'srcdir' -- what do you think?
> >
> >Rich
> >
> >Eddie O'Neil wrote:
> >
> >
> >
> >> I've got a fix for BEEHIVE-933, but I'm not sure why it makes things
> >>work. Ultimately, this was caused by reorganizing the netui-blank
> >>project template and resulting configuration problems with how the
> >><build-pageflows> Ant macro is invoked.
> >>
> >> The problem right now that is causing the behavior in the bug is
> >>that the shared flow from the tutorial in
> >><proj-root>/src/shared/SharedFlow.java isn't being picked up by the
> >>Page Flow annotation processor. In the repro, the Ant that builds the
> >>JPFs looks like:
> >>
> >><build-pageflows srcdir="${web.dir}"
> >> webcontentdir="${web.dir}"
> >> destdir="${build.dir}/WEB-INF/classes"
> >> tempdir="${build.dir}/WEB-INF/${tmp.sourcegen.dir}"
> >> classpathref="webapp.classpath"/>
> >>
> >>Obviously, the src/ directory isn't in any of the source paths, so it
> >>shouldn't be picked up.
> >>
> >> The fix is to add a sourcepathref like:
> >>
> >><path id="webapp.sourcepath">
> >> <pathelement location="${src.dir}"/>
> >> <pathelement location="${web.dir}"/>
> >></path>
> >>
> >><build-pageflows srcdir="${basedir}"
> >> webcontentdir="${web.dir}"
> >> destdir="${build.dir}/WEB-INF/classes"
> >> tempdir="${build.dir}/WEB-INF/${tmp.sourcegen.dir}"
> >> sourcepathref="webapp.sourcepath"
> >> classpathref="webapp.classpath"/>
> >>
> >>and this works. But, in order to make this work, I had to explicitly
> >>set the srcdir equal to the ${basedir}. This is the part that I'm not
> >>sure about -- it needed to be there in order to keep the AptTask from
> >>throwing an ArrayIndexOutOfBoundsException on line 198 (should be an
> >>assert here...). I've not dug deeper than this right now, and as such
> >>am probably missing something simple. Any insight into why this works
> >>this way?
> >>
> >> In the long run, it would be cool to be able to do:
> >>
> >><build-pageflows webcontentdir="${web.dir}"
> >> destdir="${build.dir}/WEB-INF/classes"
> >>
> >>
> >>
> >tempdir="${build.dir}/WEB-INF/${tmp.sourcegen.dir}"
> >
> >
> >> classpathref="webapp.classpath">
> >> <src path="src"/>
> >> <src path="web"/>
> >></build-pageflows>
> >>
> >>though it's best to avoid putting source files in the web/ directory
> >>entirely. :)
> >>
> >> Another way this could be fixed in the tutorial would be to move the
> >>src/shared/ file into the web/shared/ and just doc / release note it.
> >>
> >> Thoughts?
> >>
> >>Eddie
> >>
> >>
> >>
> >>
> >>
> >
> >
> >
> >
>