It turns out this is a known (and now fixed) problem with using ${project.basedir} on windows: http://jira.codehaus.org/browse/JIBX-429

Is there any problem with applying Jim's change to avoid ${project.basedir}? If not, that's the best solution until the next JiBX release.

  - Dennis


On 03/19/2011 04:17 AM, Jim Talbut wrote:
I was wrong, I was getting the same error messages, so I've had a play with the pom and now it's building on my Windows box.

C:\Work\cxf\systests\databinding>svn diff
Index: pom.xml
===================================================================
--- pom.xml     (revision 1082857)
+++ pom.xml     (working copy)
@@ -148,13 +148,14 @@
<artifactId>maven-jibx-plugin</artifactId>
<version>${cxf.jibx.version}</version>
<configuration>
- <directory>${basedir}/target/generated/src/test/java/jibx_bindings</directory> + <bindingDirectory>target/generated/src/test/java/jibx_bindings</bindingDirectory>
<!--load>true</load-->
<!--validate>true</validate-->
<!--verify>true</verify-->
<includes>
- <include>${hello.world.binding.file}</include>
- <include>${doc.lit.bare.binding.file}</include>
+ <include>*.xml</include>
+ <!--include>${hello.world.binding.file}</include-->
+ <!--include>${doc.lit.bare.binding.file}</include-->
</includes>
</configuration>
<executions>

I've been trying to change "includes" to "includeBindings", but I can never make that work. Unfortunately I have to run now, so I can't work out what these entries should be, but hopefully someone who knows something about jibx can do that.

Jim

On 18/03/2011 13:22, Jim Talbut wrote:
Just tried building with maven 3.0.3 and that failed in exactly the same
way :(

I'm not seeing those warning messages, and I do have the files
"C:\Work\cxf\systests\databinding\target\generated\src\test\java\org\apache\helloWorldSoapHttp\jibx\types\SayHi.java"

and
"C:\Work\cxf\systests\databinding\target\generated\src\test\java\org\apache\cxf\jibx\doclitbare\types\StringRespType.java"


Jim

On 18/03/2011 11:25, Daniel Kulp wrote:
On Friday 18 March 2011 6:52:48 AM Jim Talbut wrote:
Hmm, this works:
mvn clean install -Pfastinstall
I thought I'd try that after seeing r1080339:
Get -Pfastinstall and -Psetup.eclipse working with jibx stuff

Both of those skip running the jaxb stuff. The test doesn't run in
eclipse
(as eclipse rebuilds the .class files that JIBX modifies) so the fix
really
was to ignore things for those profiles.


but this doesn't:
mvn clean install

If you scroll up the logs, you should see something like:


[INFO] --- maven-jibx-plugin:1.2.3:test-bind (default) @ cxf-systests-
databinding ---
[INFO] Running JiBX binding compiler (single-module mode) on 2 binding
file(s)
[INFO]


I just noticed it's not working on our windows builds as well:


[WARNING] DEPRECATED [directory]: - Since binding and codegen use this
for
different files,
use bindingDirectory
[WARNING] DEPRECATED [includes]: - This name was confusing since it is
used as
a binding file pattern
for bind and a schema file pattern for code-gen.
Use includeBindings for binding and includeSchema for schema
<b>Note:</b>Uses the standard filter format described in the plexus
<a href="http://plexus.codehaus.org/plexus-
utils/apidocs/org/codehaus/plexus/util/DirectoryScanner.html">DirectoryScanner</a>.<br/>

<b>Defaults value is:</b> binding.xml.
[INFO] [jibx:test-bind {execution: default}]
[INFO] Not running JiBX binding compiler (single-module mode) - no
binding
files


The warnings are a little interesting. They only seem to appear with
Maven
2.2.1. I don't see them with Maven 3. That said, it at least works with
2.2.1 on Linux. I'm wondering if JiBX is having issues with spaces in the
directories.

Dan



Don't know what any of that means yet :)

Jim

On 18/03/2011 09:59, Dennis Sosnoski wrote:
Hi Jim,

JiBX uses binding definitions, which must be compiled into bytecode by
the JiBX binding compiler before use. It looks like either that's not
being done, or the bindings aren't using the expected names.

Since you're on Windows, anything that has to do with file name case
could be an issue. Other than that, nothing comes to mind.

I haven't looked at the test code in any detail, so I'm not sure what
it's doing. See if the directory with the compiled class files also has
JiBX_... class files present. If so, that should mean the binding
compiler has been run, and it's an issue with the binding name somehow
not matching what's expected.

- Dennis

On 03/18/2011 10:34 PM, Jim Talbut wrote:
Revision: 1082857
JDK: Java(TM) SE Runtime Environment (build 1.6.0_24-b07)
Maven: Apache Maven 2.2.1 (r801777; 2009-08-06 20:16:01+0100)
OS: Windows Vista 64 bit, 8GB RAM.
No spaces in path.

Mean anything to anyone?

-------------------------------------------------------
T E S T S
-------------------------------------------------------
Running org.apache.cxf.systest.jibx.ClientServerJibxTest
Tests run: 2, Failures: 0, Errors: 2, Skipped: 0, Time elapsed: 2.696
sec<<< FAILURE!
testCallFromDocLitBareClient(org.apache.cxf.systest.jibx.ClientServerJib

xTest) Time elapsed: 0.422 sec<<< ERROR!
javax.xml.ws.soap.SOAPFaultException: org.jibx.runtime.JiBXException:
Unable to access binding information for class
org.apache.cxf.jibx.doclitbare.types.StringRespType
Make sure the binding has been compiled
at
org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:146)

at $Proxy32.bareNoParam(Unknown Source)
at
org.apache.cxf.systest.jibx.ClientServerJibxTest.testCallFromDocLitBareC

lient(ClientServerJibxTest.java:84)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.jav

a:39)

at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessor

Impl.java:25)

at java.lang.reflect.Method.invoke(Method.java:597)
at
org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMet

hod.java:44)

at
org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallab

le.java:15)

at
org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMetho

d.java:41)

at
org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod

.java:20)

at
org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:

31)

at
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner

.java:76)

at
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner

.java:50)

at org.junit.runners.ParentRunner$3.run(ParentRunner.java:193)
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:52)
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:191)
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:42)
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:184)
at
org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.jav

a:28)

at
org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:

31)

at org.junit.runners.ParentRunner.run(ParentRunner.java:236)
at
org.apache.maven.surefire.junit4.JUnit4TestSet.execute(JUnit4TestSet.jav

a:53)

at
org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Pro

vider.java:119)

at
org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.ja

va:101)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.jav

a:39)

at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessor

Impl.java:25)

at java.lang.reflect.Method.invoke(Method.java:597)
at
org.apache.maven.surefire.booter.ProviderFactory$ClassLoaderProxy.invoke

(ProviderFactory.java:103)

at $Proxy0.invoke(Unknown Source)
at
org.apache.maven.surefire.booter.SurefireStarter.invokeProvider(Surefire

Starter.java:150)

at
org.apache.maven.surefire.booter.SurefireStarter.runSuitesInProcess(Sure

fireStarter.java:74)

at
org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:69)

Caused by: org.apache.cxf.binding.soap.SoapFault:
org.jibx.runtime.JiBXException: Unable to access binding information
for class org.apache.cxf.jibx.doclitbare.types.StringRespType
Make sure the binding has been compiled
at
org.apache.cxf.binding.soap.interceptor.Soap11FaultInInterceptor.unmarsh

alFault(Soap11FaultInInterceptor.java:75)

at
org.apache.cxf.binding.soap.interceptor.Soap11FaultInInterceptor.handleM

essage(Soap11FaultInInterceptor.java:46)

at
org.apache.cxf.binding.soap.interceptor.Soap11FaultInInterceptor.handleM

essage(Soap11FaultInInterceptor.java:35)

at
org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorC

hain.java:263)

at
org.apache.cxf.interceptor.AbstractFaultChainInitiatorObserver.onMessage

(AbstractFaultChainInitiatorObserver.java:99)

at
org.apache.cxf.binding.soap.interceptor.CheckFaultInterceptor.handleMess

age(CheckFaultInterceptor.java:69)

at
org.apache.cxf.binding.soap.interceptor.CheckFaultInterceptor.handleMess

age(CheckFaultInterceptor.java:34)

at
org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorC

hain.java:263)

at org.apache.cxf.endpoint.ClientImpl.onMessage(ClientImpl.java:730)
at
org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResp

onseInternal(HTTPConduit.java:1563)

at
org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResp

onse(HTTPConduit.java:1448)

at
org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTP

Conduit.java:1356)

at
org.apache.cxf.io.CacheAndWriteOutputStream.postClose(CacheAndWriteOutpu

tStream.java:47)

at
org.apache.cxf.io.CachedOutputStream.close(CachedOutputStream.java:188)

at
org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:56)

at
org.apache.cxf.transport.http.HTTPConduit.close(HTTPConduit.java:614)
at
org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingI

nterceptor.handleMessage(MessageSenderInterceptor.java:62)

at
org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorC

hain.java:263)

at org.apache.cxf.endpoint.ClientImpl.doInvoke(ClientImpl.java:479)
at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:414)
at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:317)
at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:269)
at org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:73)
at
org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:124)

... 33 more

testCallFromClient(org.apache.cxf.systest.jibx.ClientServerJibxTest)
Time elapsed: 0.125 sec<<< ERROR!
javax.xml.ws.soap.SOAPFaultException: org.jibx.runtime.JiBXException:
Unable to access binding information for class
org.apache.helloworldsoaphttp.jibx.types.SayHi
Make sure the binding has been compiled
at
org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:146)

at $Proxy34.sayHi(Unknown Source)
at
org.apache.cxf.systest.jibx.ClientServerJibxTest.testCallFromClient(Clie

ntServerJibxTest.java:120)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.jav

a:39)

at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessor

Impl.java:25)

at java.lang.reflect.Method.invoke(Method.java:597)
at
org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMet

hod.java:44)

at
org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallab

le.java:15)

at
org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMetho

d.java:41)

at
org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod

.java:20)

at
org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:

31)

at
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner

.java:76)

at
org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner

.java:50)

at org.junit.runners.ParentRunner$3.run(ParentRunner.java:193)
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:52)
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:191)
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:42)
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:184)
at
org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.jav

a:28)

at
org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:

31)

at org.junit.runners.ParentRunner.run(ParentRunner.java:236)
at
org.apache.maven.surefire.junit4.JUnit4TestSet.execute(JUnit4TestSet.jav

a:53)

at
org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Pro

vider.java:119)

at
org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.ja

va:101)

at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.jav

a:39)

at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessor

Impl.java:25)

at java.lang.reflect.Method.invoke(Method.java:597)
at
org.apache.maven.surefire.booter.ProviderFactory$ClassLoaderProxy.invoke

(ProviderFactory.java:103)

at $Proxy0.invoke(Unknown Source)
at
org.apache.maven.surefire.booter.SurefireStarter.invokeProvider(Surefire

Starter.java:150)

at
org.apache.maven.surefire.booter.SurefireStarter.runSuitesInProcess(Sure

fireStarter.java:74)

at
org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:69)

Caused by: java.lang.RuntimeException: org.jibx.runtime.JiBXException:
Unable to access binding information for class
org.apache.helloworldsoaphttp.jibx.types.SayHi
Make sure the binding has been compiled
at org.apache.cxf.jibx.JibxDataWriter.write(JibxDataWriter.java:72)
at org.apache.cxf.jibx.JibxDataWriter.write(JibxDataWriter.java:40)
at
org.apache.cxf.interceptor.AbstractOutDatabindingInterceptor.writeParts(

AbstractOutDatabindingInterceptor.java:119)

at
org.apache.cxf.interceptor.BareOutInterceptor.handleMessage(BareOutInter

ceptor.java:68)

at
org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorC

hain.java:263)

at org.apache.cxf.endpoint.ClientImpl.doInvoke(ClientImpl.java:479)
at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:414)
at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:317)
at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:269)
at org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:73)
at
org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:124)

... 33 more
Caused by: org.jibx.runtime.JiBXException: Unable to access binding
information for class org.apache.helloworldsoaphttp.jibx.types.SayHi
Make sure the binding has been compiled
at
org.jibx.runtime.BindingDirectory.getBindingList(BindingDirectory.java:7

5)

at
org.jibx.runtime.BindingDirectory.getFactory(BindingDirectory.java:211)

at org.apache.cxf.jibx.JibxDataWriter.write(JibxDataWriter.java:66)
... 43 more
Caused by: java.lang.NoSuchFieldException: JiBX_bindingList
at java.lang.Class.getDeclaredField(Class.java:1882)
at
org.jibx.runtime.BindingDirectory.getBindingList(BindingDirectory.java:6

8)

... 45 more


Results :

Tests in error:

testCallFromDocLitBareClient(org.apache.cxf.systest.jibx.ClientServerJib

xTest): org.jibx.runtime.JiBXException: Unable to access binding
information for class
org.apache.cxf.jibx.doclitbare.types.StringRespTy
pe
testCallFromClient(org.apache.cxf.systest.jibx.ClientServerJibxTest):
org.jibx.runtime.JiBXException: Unable to access binding information
for class org.apache.helloworldsoaphttp.jibx.types.SayHi

Tests run: 28, Failures: 0, Errors: 2, Skipped: 0


-------------------------------------------------------




Reply via email to