users@jaxb.java.net

Re: Too many target nodes (Xpath)

From: Pavel Bucek <pavel.bucek_at_oracle.com>
Date: Wed, 20 Apr 2011 13:46:47 +0200

can you please try: <jaxb:bindings node="//xsd:complexType"
multiple="true" required="false"> ? (remove jaxb prefix from attributes).

Pavel

On 4/20/11 11:36 AM, Roger Parkinson wrote:
> What version of jaxb? I tried 2.2.3 and it told me
> Attribute 'jaxb:required' is not allowed to appear in element
> 'jaxb:bindings'.
> This is what I tried:
>
> <jaxb:bindings node="//xsd:complexType" jaxb:multiple="true"
> jaxb:required="false">
> <annox:annotate>
> <annox:annotate
> annox:class="org.hibernate.search.annotations.Field"
> annox:name="item" />
> </annox:annotate>
> </jaxb:bindings>
>
> and I got:
>
> [xjc] [ERROR] XPath evaluation of "//xsd:complexType" results in
> too many (105) target nodes
> [xjc] line 23 of
> file:/home/roger/workspace/madura-objects.google/new.xsd
> [xjc] [ERROR] cvc-complex-type.3.2.2: Attribute 'jaxb:required'
> is not allowed to appear in element 'jaxb:bindings'.
> [xjc] line 23 of
> file:/home/roger/workspace/madura-objects.google/new.xsd
> [xjc] [ERROR] cvc-complex-type.3.2.2: Attribute 'jaxb:multiple'
> is not allowed to appear in element 'jaxb:bindings'.
> [xjc] line 23 of
> file:/home/roger/workspace/madura-objects.google/new.xsd
>
> But it would be good to get this working
> Regards
> Roger
>
> On 20/04/11 19:32, Pavel Bucek wrote:
>> hello,
>>
>> btw, you can try something like this:
>>
>> <jxb:bindings node="..." multiple="true" required="false">
>> ...
>> </jxb:bindings>
>>
>>
>> multiple allows you to select more than one target and required
>> disables the need to match at least one element.
>>
>> fyi these properties are non-documented (and experimental), but it
>> could work for you :)
>>
>> Pavel
>>
>>
>> On 4/19/11 10:55 AM, Roger Parkinson wrote:
>>> Thanks, Lexi.
>>>
>>> I'll go for the plugin approach. I'm going to need a plugin for this
>>> thing anyway so it's just a bit more to add to it.
>>> I've done a couple of them before
>>> (http://code.google.com/p/madura-objects/) and they're a nice
>>> combination of powerful and easy.
>>>
>>> Roger
>>>
>>> On 19/04/11 19:20, Aleksei Valikov wrote:
>>>> Hi,
>>>>
>>>>> I was trying to do this:
>>>>> <schema ....
>>>>> <xsd:annotation>
>>>>> <xsd:appinfo>
>>>>> ��� .....
>>>>> ���<jaxb:bindings node="//xsd:complexType">
>>>>> ��� ���<annox:annotate>
>>>>> ��� ��� ���<annox:annotate
>>>>> annox:class="org.hibernate.search.annotations.Field" annox:name="item" />
>>>>> ��� ���</annox:annotate>
>>>>> ���</jaxb:bindings>
>>>>>
>>>>> ...
>>>>>
>>>>> The intention was to add an annotation onto every generated class.
>>>>> It looks promising but I get this:
>>>>>
>>>>> ����� [xjc] [ERROR] XPath evaluation of "//xsd:complexType" results in too
>>>>> many (105) target nodes
>>>>> ����� [xjc]�� line 26 of
>>>>> file:/home/roger/workspace/madura-objects.google/new.xsd
>>>>>
>>>>> I gather this is a problem with XPath (well there's the error message). Is
>>>>> there a way around it?
>>>>> Eg specify the syntax differently etc?
>>>>> Probably a long shot but I figure you guys would have worked around it if
>>>>> anyone has.
>>>> XJC does not allow you to customize several nodes at once. So it's not
>>>> the XPath problem, it's XJC problem. XJC simply disallows this.
>>>>
>>>> Options:
>>>> * File an RFE for JAXB RI, so that this feature is added to XJC.
>>>> * Write a JAXB plugin which allows adding customization elements to
>>>> several items at once.
>>>>
>>>> The first one is the "official" way. With the second one you can
>>>> achieve much more flexibility. I find it quite cumbersome defining
>>>> customizations in schema or binding files. I always wanted something
>>>> like extra XML files which are just named accordingly.
>>>>
>>>> I'm reposting to theusers_at_jaxb.java.net ML.
>>>>
>>>> Bye,
>>>> /lexi
>>>>
>>>
>>> --
>>> /Roger Parkinson
>>> Mob +64 21 508 792
>>> Twitter <http://twitter.com/RogerParkinson>
>>> Blog <http://mrkimi01.blogspot.com/>
>>> Home Page <http://sites.google.com/site/rogerparkinson35/>
>>> Fiction <http://www.smashwords.com/profile/view/RogerParkinson>
>>> /
>>
>
> --
> /Roger Parkinson
> Mob +64 21 508 792
> Twitter <http://twitter.com/RogerParkinson>
> Blog <http://mrkimi01.blogspot.com/>
> Home Page <http://sites.google.com/site/rogerparkinson35/>
> Fiction <http://www.smashwords.com/profile/view/RogerParkinson>
> /