Hi Juan,
Thanks very much for your suggestion, it works perfectly.
I could see my numa nodes data now.
I will upload the latest patch set tomorrow.
Juan is so cool.
Best Regards,
Jason Liao
-----Original Message-----
From: Juan Hernandez [mailto:jhernand@redhat.com]
Sent: 2014年5月6日 17:32
To: Liao, Chuan (Jason Liao, HPservers-Core-OE-PSC); devel(a)ovirt.org
Cc: Gilad Chaplik; Alexander Wels
Subject: Re: Change in ovirt-engine[master]: restapi: NUMA feature restful API support
On 05/06/2014 11:28 AM, Juan Hernandez wrote:
> On 05/01/2014 06:30 PM, Liao, Chuan (Jason Liao,
> HPservers-Core-OE-PSC)
> wrote:
>> Hi Juan,
>>
>> Thanks for your reply. I try to add them to interface, seems that we still
meet
some problem:
>>
>> Call restful API:
>> api/hosts/e225422a-aeab-453e-b7ac-56c9f5ce378c/numanodes
>>
>> Error occur:
>> java.lang.NullPointerException
>>
org.ovirt.engine.api.restapi.resource.AbstractBackendResource.linkSubCollectio
ns(AbstractBackendResource.java:264)
>>
org.ovirt.engine.api.restapi.resource.AbstractBackendResource.addLinks(Abstra
ctBackendResource.java:206)
>>
org.ovirt.engine.api.restapi.resource.AbstractBackendResource.addLinks(Abstra
ctBackendResource.java:196)
>>
org.ovirt.engine.api.restapi.resource.BackendHostNumaNodesResource.list(Bac
kendHostNumaNodesResource.java:43)
>> sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>>
>> I am not sure that we have this links add into interface, could you give us
some
suggestion to debug it ?
>>
>> Best Regards,
>> Jason Liao
>>
>
> There are two problems there:
>
> 1. You are putting the JAX-RS annotations @GET and @Formatted in the
> implementation class and in the interface. RESTEasy is looking for the
> @Produces annotation in the same class where you have the @GET
> annotation, so in this case it is looking in
> BackendHostNumaNodesResource, and they aren't there, but in the
> interface. The solution to this is to avoid the annotations in the
> implementation class, put them only in the interface (they are already
> there).
>
> 2. You are adding back-links to the host resource, for example:
>
> <host_numa_nodes>
> <host_numa_node href="..." id="...">
> <host href="/api/hosts/{host:id}" id="{host:id}"/>
> ...
> </host_numa_node>
> ...
> </host_numa_node>
>
> For this to work the NumaNode model that you are creating need to have
> a reference to the corresponding Host model, and they won't have it
> unless you override the "addParent()" method in
> BackendHostNumaNodesResource, something like this:
>
> @Override
> public NumaNode addParents(NumaNode node) {
> Host host = new Host();
> host.setId(hostId);
> node.setHost(host);
> return node;
> }
>
> I'm attaching a patch that you can apply on top of yours to make these
> changes.
>
That patch contains some code that I wrote to artificially populate the list of numa
nodes, please disregard it. I'm attaching a clean one now.
>>> -----Original Message-----
>>> From: Juan Hernandez [mailto:juan.hernandez@redhat.com]
>>> Sent: 2014年4月30日 20:34
>>> To: Liao, Chuan (Jason Liao, HPservers-Core-OE-PSC); devel(a)ovirt.org
>>> Cc: Gilad Chaplik; Alexander Wels
>>> Subject: Re: Change in ovirt-engine[master]: restapi: NUMA feature
>>> restful API support
>>>
>>> On 04/30/2014 02:10 PM, Liao, Chuan (Jason Liao,
>>> HPservers-Core-OE-PSC)
>>> wrote:
>>>> Hi,
>>>>
>>>> When we finish all the restful API code for NUMA feature and test it.
>>>>
>>>> We met one problem which is hard to debug, as attachment.
>>>>
>>>> Could you help us to review our code or give us some suggestion to
>>>> debug this
>>> problem ?
>>>> The patch set link:
>>>>
http://gerrit.ovirt.org/26943
>>>>
>>>> Thank you very much.
>>>>
>>>> Best Regards,
>>>> Jason Liao
>>>>
>>>
>>> I think that the problem is that in the VmNumaNodeResource interface
>>> you didn't specify the @Produces annotation. As a result when you
>>> call the GET operation the server uses the default "text/html",
and
>>> then it fails to find a writer that can convert your object to HTML. You
need to add
this to annotation to the interface:
>>>
>>> You should add the following annotation to this class:
>>>
>>> @Produces({ApiMediaType.APPLICATION_XML,
>>> ApiMediaType.APPLICATION_JSON, ApiMediaType.APPLICATION_X_Y
>>> AML})
>>>
>>>>> -----Original Message-----
>>>>> From: automation(a)ovirt.org [mailto:automation@ovirt.org]
>>>>> Sent: 2014年4月30日 19:56
>>>>> To: Liao, Chuan (Jason Liao, HPservers-Core-OE-PSC)
>>>>> Cc: Juan Hernandez; Gilad Chaplik; Alexander Wels
>>>>> Subject: Change in ovirt-engine[master]: restapi: NUMA feature
>>>>> restful API support
>>>>>
>>>>> automation(a)ovirt.org has posted comments on this change.
>>>>>
>>>>> Change subject: restapi: NUMA feature restful API support
>>>>>
......................................................................
>>>>>
>>>>>
>>>>> Patch Set 2:
>>>>>
>>>>> * #1069303::Update tracker: OK
>>>>> * Bug-Url: IGNORE, not in a monitored branch (ovirt-engine-3.4
>>>>> * Check merged to previous: IGNORE, Not in stable branch
>>>>> (['ovirt-engine-3.4', 'ovirt-engine-3.3',
'ovirt-engine-3.4.0',
>>>>> 'ovirt-engine-3.3.4', 'ovirt-engine-3.3.3',
'ovirt-engine-3.3.2',
>>>>> 'ovirt-engine-3.3.1'])
>>>>>
>>>>> --
>>>>> To view, visit
http://gerrit.ovirt.org/26943 To unsubscribe, visit
>>>>>
http://gerrit.ovirt.org/settings
>>>>>
>>>>> Gerrit-MessageType: comment
>>>>> Gerrit-Change-Id: I72ed4b16c220decbf640f74c4aadffe423afc290
>>>>> Gerrit-PatchSet: 2
>>>>> Gerrit-Project: ovirt-engine
>>>>> Gerrit-Branch: master
>>>>> Gerrit-Owner: Jason Liao <chuan.liao(a)hp.com>
>>>>> Gerrit-Reviewer: Alexander Wels <awels(a)redhat.com>
>>>>> Gerrit-Reviewer: Gilad Chaplik <gchaplik(a)redhat.com>
>>>>> Gerrit-Reviewer: Juan Hernandez <juan.hernandez(a)redhat.com>
>>>>> Gerrit-Reviewer: automation(a)ovirt.org
>>>>> Gerrit-Reviewer: oVirt Jenkins CI Server
>>>>> Gerrit-HasComments: No
>>
>
--
Dirección Comercial: C/Jose Bardasano Baos, 9, Edif. Gorbea 3, planta 3ºD, 28016
Madrid, Spain Inscrita en el Reg. Mercantil de Madrid – C.I.F. B82657941 - Red Hat S.L.