Hi Nicklas,
I'm adding back resteasy mailing list to this conversation.
As I mentioned in my previous mail: can you please provide a reproducer? (zip file with java project/projects with minimal example of this issue/issues (deployment application and optionally client application)).
Thank you,
Marek
But another thing that's really strange is if I do a
return client.target(...).path("md5").request().post(Entity.json(paths)).readEntity(new GenericType<Map<Path, String>>() {});
(where paths is a Collection<Path>)
I see my PathAdapter being hit on the way out but not when parsing the result. Furthermore, I get my Map<Path, String> but the keys are somehow Strings. Don't ask me how that works syntactically with the key being a Path. The compiler is fine with me using them as paths until I actually try to call path methods on it, then they go all ClassCastException on me.
On Thu, Mar 14, 2019 at 6:35 PM Nicklas Karlsson <nickarls@gmail.com> wrote:
Thanks for the reply, I'll see if I can distill it down.
I actually got it working by explicitly registering the provider with the client builder (did it wrong the first time). I checked with the debugger and the ClientBuilder apparently holds provider factories that *sound* like their job would be picking up the ContextResolver but I get by for now. As a curiosity, register(Object) only worked for me when I instantiated the ContextResolver with new(), apparently it's an CDI injectable resource but passing along that instance resulted in some sort of ArrayIndexOutBoundsException.
On Thu, Mar 14, 2019 at 5:21 PM Marek Kopecky <mkopecky@redhat.com> wrote:
Hi Nicklas,
can you please provide a reproducer? (zip file with minimal example of this issue).
Thank you,
Marek
On 3/14/19 11:45 AM, Nicklas Karlsson wrote:
Hi,
I'm trying out the RESTEasy client on a WildFly 16 and I'm running into a serialization problem. I have a CDI @Provider for ContextResolver<Jsonb> but when using the client with some non-standard Objects (Adapters registered in the Jsonb-provider), I never see the provider hit and I get exception like
Caused by: java.lang.IllegalAccessException: Class org.eclipse.yasson.internal.model.GetFromGetter can not access a member of class sun.nio.fs.WindowsPath with modifiers "public" and
Caused by: javax.ws.rs.ProcessingException: RESTEASY008205: JSON Binding serialization error javax.json.bind.JsonbException: Error getting value on: foo.txt andCaused by: javax.json.bind.JsonbException: Error getting value on: yep.fmb12:36:19,331 at org.eclipse.yasson.internal.model.GetValueCommand.getValue(GetValueCommand.java:36)
and the likes which could be expected from a best-guess attempt at serializing a java.nio.file.Path instead of using the Adapter.
I've also tried registering the provider directly in the client builder but still no go? What is the correct way of hooking up JSON-B serialization?
Thanks in advance,Nik--
Nicklas Karlsson, +358 40 5062266Vaakunatie 10 as 7, 20780 Kaarina
_______________________________________________ resteasy mailing list resteasy@lists.jboss.org https://lists.jboss.org/mailman/listinfo/resteasy
--
Nicklas Karlsson, +358 40 5062266Vaakunatie 10 as 7, 20780 Kaarina
--
Nicklas Karlsson, +358 40 5062266Vaakunatie 10 as 7, 20780 Kaarina