Well, the build process per se relies heavily on the data found in
catalog.xml, which
is located @ the root of the file hierarchy of the project. It is used, for
example, to turn
these AAA/xxx.wsdl entries into sensible file paths.
On 5/18/09 8:24 AM, jsexton0 wrote:
> There appears to be a great deal of mystery surrounding the build process.
> I'll include here a few more details for other that may be interested, but
> it appears that a headless build is not possible or practical at this time.
>
> First of all, the information found here:
>
http://blogs.sun.com/tronds/entry/creating_a_simple_headless_build> is vital to even getting started with regard to the build environment. That
> setup may be enough for most projects, or at least projects other than BPEL
> projects that refer to WSDLs in other projects.
>
> The nature of the "location" clause of an import in a BPEL file is unknown.
> It is not a file path, nor does using "file://" work. The build process
> somehow knows where to look for "AAA" when the location tag is
> "AAA/BBB.wsdl", even when the target is in some completely different project
> and hierarchy on the machine. I have been unable to determine how this
> happens - ie, how "AAA/BBB.wsdl" is mapped to a physical file.
>
> This magic occurs in at least two classes invoked by the build process:
>
> org.netbeans.modules.bpel.project.anttasks.cli.CliValidateBpelProjectTask
> org.netbeans.modules.bpel.project.anttasks.cli.CliGenerateCatalogTask
>
> Somehow, inside the GUI only, these classes can map the location tags to
> physical files and find thus the WSDLs required. GUI-only builds is a very
> surprising limitation, but there it is. I anyone has anyother information
> on this, I'd very much like to hear about it. It seems we will have to
> replace the build scripts for our projects.
>
>
> jsexton0 wrote:
>> Hello -
>>
>> When a WSDL from a separate project is included in a BPEL, the<import>
>> tag's location cause looks like this:
>>
>> <import namespace="
http://myns" location="otherProject/my.wsdl"
>> importType="
http://schemas.xmlsoap.org/wsdl/"/>
>>
>> whereas WSDLs from the local BPEL project look like this:
>>
>> <import namespace="
http://myns" location="my.wsdl"
>> importType="
http://schemas.xmlsoap.org/wsdl/"/>
>>
>> Both forms work when building from inside Netbeans. When building from
>> the command line with ant, the WSDL file pointed to by the location cause
>> for these imported from other projects can not be found.
>>
>> My question is, what is the location clause exactly? A path? It doesn't
>> seem to be if both the above forms work. What do we have to do so the
>> WSDLs in other projects are found when building from the command line?
>> How does the validation/build process search for included WSDL files?
>>
>> Thank you
>>
>