Friday, December 20, 2024

Re: Class not included in the set of types for RPC

Are you sure you have no compiler errors, and -failOnError (or -strict) is set?

We can't see the code you won't share, so I can only make up scenarios for what might be wrong, as this is effectively "black box" testing from our part. Here's a scenario:

Your RemoteService type doesn't mention Box or Line directly, but Component
Component has other valid subtypes other than Box
Line doesn't actually compile at this time (or: some field that Line references doesn't compile, preventing it from compiling, etc).
But since there are other valid Component types that the compiler can see, GWT-RPC is satisfied that at least one Component subtype can be serialized.

If you remove Line from Box, suddenly Box can itself be compiled, so it can be serialized.

The same above can be true for "serialized" instead of "compiled" - if Line isn't actually able to be compiled and you didn't accurately share Line - for example, is Point serializable? I dont see it on the policy file examples either... do the other non-serializable types reference it or Line?

On Thursday, December 19, 2024 at 11:47:08 PM UTC-6 ne...@propfinancing.com wrote:

This is very interesting.  I added Line as a private member to Box:

  /** Testing a line instance */

  private Line line;

 

And an accessor:

  /** Test method for GWT */

  public Line getLine() {

    return line;

  }

 

Now, Box is not generated in the .gwt.rpc file (Box Box$STATE is still there).

 

If I mark those two items with @GwtIncompatible, Box appears again.

 

Thank you,

Neil

 

--

Neil Aggarwal, (972) 834-1565, http://www.propfinancing.com

We offer 30 year loans on single family houses!

 

From: Neil Aggarwal <ne...@propfinancing.com>
Sent: Thursday, December 19, 2024 10:45 PM
To: 'google-we...@googlegroups.com' <google-we...@googlegroups.com>
Subject: RE: Class not included in the set of types for RPC

 

> Can you share the full contents of Line and Box? Or at least their class hierarchy and fields - methods are not important.

 

I am attaching pared-down versions of Component, Box, and Line.

I am also attaching the generated .gwt.rpc

 

> Something has definitely changed since your last email - "Line$STATUS" was present before,

> but isn't now. Was that a deliberate change?

 

Yes. I have been paring down my classes to see if I can find out what the GWT Compiler

does not like so no luck so far.

 

Thank you,

 Neil

 

--

Neil Aggarwal, (972) 834-1565, http://www.propfinancing.com

We offer 30 year loans on single family houses!

--
You received this message because you are subscribed to the Google Groups "GWT Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to google-web-toolkit+unsubscribe@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/google-web-toolkit/47545995-bbb7-4a33-8c8b-082433c833e3n%40googlegroups.com.

No comments:

Post a Comment