Re: [ERROR] OutOfMemoryError: Increase heap size or lower gwt.jjs.maxThreads

2024-10-02 Thread Jens


Still I'm quite interested why we've never run in similar compilation 
issues despite having quite a larger set of frontend code as stated in this 
thread. Can someone explain? 


Because you have way less code split points. A lot of code split points 
will significantly increase compilation time and memory usage. If I do not 
misunderstand the table posted by the person who started the discussion, 
the code in question had nearly 800 split points. Maybe the algorithm in 
GWT compiler can be optimized but currently if you have that many split 
points GWT compilation will be resource hungry. 

-- J.

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/d8939562-c2ef-4ebf-8916-e33c9a6d0bcen%40googlegroups.com.


Re: [ERROR] OutOfMemoryError: Increase heap size or lower gwt.jjs.maxThreads

2024-09-26 Thread Jens


Now! our WAR is compiling (single permutation) in 10.25 mins only. We are 
testing our application workflow as many of the differedJS files are 
greater than 1 mb. We'll try to reduce the size. 


Sounds way better and you can likely decrease the required Java heap now as 
well. You had A LOT of split points. Personally I use split points more 
like one per menu item of the first or second level menu, depending on the 
size of the application. Grouping menu items behind a single split point 
can also make sense, e.g. user vs. admin menu items or based on other usage 
patterns. Occasionally I use split points for a feature like rendering 
charts that could be split away until needed. 



Whereas GWT 2.6.1 upgradation is concerned, we would like to say, yes! we 
are actively developing the application and are intrested in upgrading GWT 
2.6.1. But there are some issues which are required to be addressed. Many 
time earlier we have planned the upgradation, but dropped the idea due to 
not having the clear answers on bellow mentioned points. 

*1.* Which version of GWT we should move to? As many of the latest 
technologies are rolling arround and GWT in itself also have released many 
versions after 2.6.1. Meanwhile J2CL had also been launched. Migrating a 
huge application rapidly is not possible, so we want to be very sure.   


The newest GWT 2.11 version will be fine. It still supports running on Java 
8 but future versions will likely not.

 

*2.* We are using "Apache Netbeans IDE" from a long time and now the team 
is also very much famlier with it. Upgraded GWT4NB plugin was missing from 
market place. Can we go for upgradation without changing IDE?


I don't know about Netbeans and GWT4NB. However GWT SDK itself hasn't 
changed in structure so I don't see why GWT4NB shouldn't work anymore with 
newer GWT versions. Of course you can use GWT without any IDE plugin and 
launch GWT SuperDevMode and GWT Compile via ANT for example. Of course you 
would loose all benefits the IDE plugin gave you.
 

*3.* We are using "JDK 1.8". Do we required to upgrade JDK too?


No, as of now. But future versions will require newer JDK. If you upgrade 
your libraries then you can probably pretty easily upgrade JDK as well. You 
might need to add some libraries as some classes have been removed from JDK 
11, 
see: 
https://www.oracle.com/java/technologies/javase/11-relnote-issues.html#JDK-8190378
 

*4.* We are using "PAYARA-WEB-SERVER" in both development + Production 
environment. GWT upgraded versions are comming with inbuild JETTY servers. 
Can we use "PAYARA-WEB-SERVER" in development after upgradtion or we have 
to stick wit JETTY only?


GWT ships with Jetty for convenience to get a demo app up and running 
quickly. But these days we recommend using your own servlet container and 
it can be any servlet container you like. If you do not use any servlet 
specific features of GWT like GWT-RPC or RequestFactory then you can use 
whatever server you like. PAYARA should continue to work fine.

 

*5.* We are using "ANT build" not "Maven build" means we are not having any 
type of POM files.  


Then you likely have a project or a folder with all your dependencies. You 
can download GWT from gwtproject.org, unzip it and use these jars in your 
ANT file. Alternatively there are ANT tasks provided by Maven which allows 
ANT to download dependencies based on POM files. 
See: https://maven.apache.org/resolver-ant-tasks/

 

*6.* We are using sencha (gxt 3.1.1) mainly for GRID functionality. 
Upgrading GWT will fall dependency is on SENCHA-GXT and upgraded SENCHA-GXT 
is paid. What are its alternative?


That is probably the main issue to solve. There are some UI widget 
libraries for GWT like https://dominokit.com/solutions/domino-ui/v2 but if 
you switch the library you would need to rewrite your code of course. 

Maybe you can make GXT work by patching it yourself if allowed.

 

*7.* Our application is having GWT standard architecure eg: (client + 
shared + server) in the same application. We want to split our application 
as client & server seperate. Where we want to move server part in 
SPRING-BOOT without any major changes. Is it possible?


Sure. First split your application without using spring boot and make it 
run again. Then apply spring boot to your server project. GWT 2.11 also has 
a JakartaEE variant now so Spring Boot 3+ should work as well (but requires 
Java 17). The benefit of splitting your project into three is that you can 
also use different JDK versions for client and server projects. Sometimes 
that is useful if your server has JDK requirements that are either newer or 
older than what you want to use for the client.


-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://g

Re: [ERROR] OutOfMemoryError: Increase heap size or lower gwt.jjs.maxThreads

2024-09-25 Thread Jens
Are you using a lot of code split points? 61GB memory seems pretty high. 
Someone else once posted a similar question and this person had ~100 split 
points which significantly impacted compilation. The more split points you 
have the more complex analysis will be in order to determine if some code 
is unique to a split point.

As comparision I have an app that produces 10MB JS in total per permutation 
and compiles fine using 4GB memory. It uses about 12 split points.


viny...@gmail.com schrieb am Dienstag, 24. September 2024 um 17:58:36 UTC+2:

> Hi everyone,
>
> We have stucked in a very strange / awkward situation. Our running GWT 
> 2.6.1 application started crashing at the time of compilation since 2 days 
> back.
>
> We are using netbeans IDE (non-maven). we are sharing our app-information 
> as follows:
> 1. "WAR" SIZE : 591MB
>
> 2. Total "*.gwt.rpc" files : 891 files (we have attached some of the 
> *.gwt.rpc files for ref.)
> [image: Screenshot 2024-09-24 205607.png]
>
> 3. "*.cache.html" SIZE : 4.15 MB 
>
> 4. Earlier when WAR was compiling it was taking max 50 minutes for full 
> comilation (single permutation) on hardware of (64 GB RAM, 4 Core, Xeon (R) 
> CPU E3-1225 v5 @3.30 GHz,  window-server 2019 standard)  
>
> 5. using JVM option -Xmx61440M (gwt-conpilation config attached for ref.)
>
> 6. Currently we are getting following error: 
> Compile with -strict or with -logLevel set to TRACE or DEBUG to see all 
> errors.
>Compiling 1 permutation
>   Compiling permutation 0...
>   [ERROR] OutOfMemoryError: Increase heap size or lower 
> gwt.jjs.maxThreads
> java.lang.OutOfMemoryError: Java heap space
> at sun.nio.cs.StreamEncoder.write(StreamEncoder.java:133)
> at java.io.OutputStreamWriter.write(OutputStreamWriter.java:220)
> at java.io.Writer.write(Writer.java:157)
> at 
> com.google.gwt.core.ext.soyc.impl.DependencyRecorder.flushOutput(DependencyRecorder.java:136)
> at 
> com.google.gwt.core.ext.soyc.impl.DependencyRecorder.endDependencyGraph(DependencyRecorder.java:70)
> at 
> com.google.gwt.dev.jjs.impl.codesplitter.CodeSplitter.computeComplementCfaForFragments(CodeSplitter.java:325)
> at 
> com.google.gwt.dev.jjs.impl.codesplitter.CodeSplitter.computeExclusivityMapWithFixups(CodeSplitter.java:362)
> at 
> com.google.gwt.dev.jjs.impl.codesplitter.CodeSplitter.execImpl(CodeSplitter.java:480)
> at 
> com.google.gwt.dev.jjs.impl.codesplitter.CodeSplitter.exec(CodeSplitter.java:115)
> at 
> com.google.gwt.dev.jjs.JavaToJavaScriptCompiler.compilePermutation(JavaToJavaScriptCompiler.java:423)
> at 
> com.google.gwt.dev.jjs.UnifiedAst.compilePermutation(UnifiedAst.java:137)
> at com.google.gwt.dev.CompilePerms.compile(CompilePerms.java:195)
> at 
> com.google.gwt.dev.ThreadedPermutationWorkerFactory$ThreadedPermutationWorker.compile(ThreadedPermutationWorkerFactory.java:50)
> at 
> com.google.gwt.dev.PermutationWorkerFactory$Manager$WorkerThread.run(PermutationWorkerFactory.java:73)
> at java.lang.Thread.run(Thread.java:750)
>  [ERROR] Out of memory; to increase the amount of memory, use the 
> -Xmx flag at startup (java -Xmx128M ...)
>   [ERROR] Unrecoverable exception, shutting down
> com.google.gwt.core.ext.UnableToCompleteException: (see previous log 
> entries)
> at 
> com.google.gwt.dev.ThreadedPermutationWorkerFactory$ThreadedPermutationWorker.compile(ThreadedPermutationWorkerFactory.java:56)
> at 
> com.google.gwt.dev.PermutationWorkerFactory$Manager$WorkerThread.run(PermutationWorkerFactory.java:73)
> at java.lang.Thread.run(Thread.java:750)
>   [ERROR] Not all permutation were compiled , completed (0/1)
> F:\users\Avinash\forNewPlugin\aarogya\nbproject\build-gwt.xml:333: The 
> following error occurred while executing this line:
> F:\users\Avinash\forNewPlugin\aarogya\nbproject\build-gwt.xml:482: Java 
> returned: 1
> BUILD FAILED (total time: 39 minutes 36 seconds) 
>
>
> We request you all to please provide any help / guidance on the same. 
>
>
>
>
>
>
>
>
>

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/a2a05066-1039-415b-a80e-09a5c58f3be1n%40googlegroups.com.


Re: JsInterop implementation issue

2024-08-22 Thread Jens
getOrCreateJsObj() needs to return a class or interface annotated with 
@JsType(isNative = true). That class or interface should have a method 
addListener(String, fn) so you can call it in Java directly.

Corbett Tek schrieb am Donnerstag, 22. August 2024 um 15:57:31 UTC+2:

> When transporting some of my previously jsni written code to jsinterop 
> framework,  I am facing problems when accessing java methods from 
> javascript file. 
>
> For example in this jsni code I am accessing java 
> method getOrCreateJsObj() and I need to convert this jsni code to jsinterop 
> framework. How can I do this? What is the syntax for this? I tried official 
> docs way, but it didn't worked out. Please help...
>
> //the jsni method that I need to convert into jsinterop
> private native void addWidgetListener(String event, JavaScriptObject fn) 
> /*-{
> var component = 
> th...@org.lib.client.widgets.Component::getOrCreateJsObj()();
> component.addListener(event, fn);
> }-*/;
>
> public JavaScriptObject getOrCreateJsObj() {
> JavaScriptObject jsObj = getComponentJS(id);
> if (jsObj != null) {
> return jsObj;
> } else {
> return create(config);
> }
> }
>

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/97e49b05-6bf2-46e2-b7ff-c63b3637b321n%40googlegroups.com.


Re: location.origin is null in GWT 2.11

2024-08-05 Thread Jens
You could add GWT.debugger() to your code at a location that fits and then 
compile your production app using GWT compiler argument -style PRETTY so 
you can read the JS. If you open Dev Tools of your browser and then load 
the app and trigger the code in question, code execution should stop at 
GWT.debugger() and you can take a look if the generated JS code looks 
reasonable. Maybe a production compile has optimized some code away.

-- J.

Oleg Ravun schrieb am Samstag, 3. August 2024 um 15:23:58 UTC+2:

> Hello,
> After switching to GWT 2.11 from 2.9 the following code prints null. 
> Though it works in SuperDevMode but when it is built for deployment it 
> produces null. It breaks communications (forth and back) using 
> window.postMessage since it relies on proper origin provided (matching). 
> What could be the reason?
> public static native boolean originToConsole() /*-{
> console.log("location.origin = " + location.origin);
> }-*/;
>
> Thanks 
>

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/bc2c4978-c0fa-41da-959a-7952615f2d3an%40googlegroups.com.


Re: is it possible to debug GWT projects (breakpoints, step through code etc) ?

2024-06-24 Thread Jens
Debugging server code is done as usual using Java debug wire protocol 
(JDWP) remote debugging.
Debugging client code is done using the browser dev tools which also allows 
setting breakpoints. During development GWT CodeServer should be started 
using '-style PRETTY -XmethodNameDisplayMode ABBREVIATED' which makes JS 
readable (but not super detailed) in case you do not want to use SourceMaps.

-- J.

Daniel Webb schrieb am Montag, 24. Juni 2024 um 11:19:34 UTC+2:

> Hi, 
> Is it possible to debug GWT projects - setting breakpoints and stepping 
> through code? This would be server and/or client debugging.
>
> We've just had our internal GWT based app updated and it now uses maven to 
> run (clean install appengine:run). The eclipse plugin based debugging 
> technique that I used to use no longer seems to work.
>
> Thanks for any advice, I really like GWT but I'm lost as to how it all 
> works!
> Daniel
>

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/e7944cb0-b35b-4faa-aeed-9dfce8d71872n%40googlegroups.com.


Re: GWT, Java 17, jakarta.servlet, Eclipse, GWT plugin

2024-06-17 Thread Jens


> If using maven... [I'm not]... If not, please give us more detail about 
what you are using (or intend to use).
After further investigation, much of my issues around this seem to be that 
the. appropriate java command to run the web app (or Jetty itself) is not 
being assembled correctly by either Eclipse, the GWT plugin, or both. 
 There are various options that are needed and are not properly set.  That 
said, even if I do/can get that working, I don't think that's the right 
approach.  As you're going to deprecate the embedded Jetty server, I should 
do whatever is needed there to run my own external server(s).  That's 
what's unclear to me.  There are ancient references to it in the 
documentation at gwt.project.org, but I'm unclear on what is really needed. 
 Do I need to set up and run a code server with my own Jetty or Tomcat 
local installation?  If so, how is that set up?  Or do I need to run my own 
app server (again, either Jetty or Tomcat).  The web app setup is obvious 
(I think... or are there special runtime parameters to direct it to the 
proper code server port?).  Forgive my ignorance on this, but if this is 
the path forward for GWT in general, I'd really like to see some clear 
documentation on how to set this up or at least what it is going to look 
like (in general, no specifics, obviously it should involve thinking and 
work on my part). Last note: I am assuming the code server will be easier 
to get working with Java 17 modules because it will (in my case) have less 
jar dependencies, as it only needs them for shared and client code.  That 
said... I might need to run both externally to get it all sorted out. 
 Again, my own thinking on this isn't that clear because I'm not in the 
weeds enough on what the plugin is really doing and how things work under 
the hood.

To give a shorter, more direct answer: I want to develop code in Eclipse in 
Java 17, and be able to run the code server and web app any way possible, 
so that GWT code compiles/recompiles as needed, and the web app can be 
accessed in the browser, and I can do iterative test-code-test-code 
development on a daily basis.


Traditionally GWT SDK only had the class com.google.gwt.dev.DevMode. It is 
responsible to launch classic dev mode (the one that does require an 
obsolete browser plugin) or SuperDevMode together with an embedded servlet 
container, by default Jetty. SuperDevMode is implemented in class 
com.google.gwt.dev.codeserver.CodeServer and DevMode basically calls this 
class if you request it to launch SuperDevMode (which is the default 
behavior). Class DevMode has a parameter "-noserver" which skips starting 
Jetty and assumes you have your own server and deployment running. Because 
we advocate running your own servlet container, e.g. Jetty/Tomcat/..., it 
is enough to just launch CodeServer yourself. However you could also 
continue to use class DevMode and replace the embedded Jetty with your own 
implementation using DevMode -server your.impl.of.ServletContainerLauncher. 
Your own implementation could then be based on Jetty 12 for example (and 
possibly jakarta)

Personally I use Gradle and have a task that just launches CodeServer by 
executing a command line. I am pretty sure you could also write a similar 
ANT task using your current ANT setup. The command line looks like 

com.google.gwt.dev.codeserver.CodeServer -sourceLevel 11 -strict 
-failOnError - bindAddress 0.0.0.0 -port 9876 -style PRETTY 
-XmethodNameDisplayMode ABBREVIATED -workDir /client-project/build/gwt/work 
-launcherDir /client-project/build/gwt/war -src 
/shared-project/src/main/java -src /shared-project/src/main/resources 
com.example.MyGwtModule

The classpath should contain gwt-user/gwt-dev/gwt-codeserver, all 
compile-time dependencies you need for GWT compilation as well as classes + 
sources + resources related to your GWT UI and DTOs. You would need to use 
ANT fileset/dirset/files to include/exclude only the files of your single 
project that are relevant for GWT compilation. Once you have that set of 
files figured out you can run GWT CodeServer in isolation via ANT with its 
own GWT focused classpath and you should not have any trouble with other 
dependencies that you need on the server only.

Once you have that running, you need to decide how you want to run a 
servlet container. Personaly I use Docker + docker-compose + Jetty image + 
shell script.

 

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/3a1c5304-b647-4fec-aba2-a557ad78834en%40googlegroups.com.


Re: GWT, Java 17, jakarta.servlet, Eclipse, GWT plugin

2024-06-12 Thread Jens
1. You do not have to use Jakarta if you want to migrate to Java 17. You 
can very well stay on javax and first make the JDK transition work
2. GWT's embedded Jetty is always javax because it is version 9.4.xx. The 
use of GWT's embedded Jetty is officially deprecated and you should use 
your own Jetty installation (local, docker image, maven/gradle plugin, 
...). This is especially true if you want to use Jakarta.
3. GWT 2.11 publishes *-jakarta dependencies that you can use once you 
start moving to Jakarta.
4. GWT Compiler only supports source level 11 so far

I use Java 11 for GWT client side code and Java 21 + javax for server side 
code. Needless to say that I have split client, shared and server code into 
their own projects. This is the recommeneded project layout these days 
because it gives you dedicated classpaths for each project and the option 
to use different JDK versions.

-- J.

Bob Lacatena schrieb am Mittwoch, 12. Juni 2024 um 00:01:47 UTC+2:

> I am wrestling with a massive effort that has been one stumbling block 
> after another. The core task is to convert a sadly monolithic and archaic 
> app from Java 8 to Java 17.
>
> My current subtask (maybe necessary, maybe not) is to convert everything 
> to use jakarta.servlet rather than javax.servlet, but when I try to declare 
> an import of com.google.gwt.user.server.rpc.jakarta.RemoteServiceServlet, 
> Eclipse just keeps replacing it with the "original" (non-jakarta) path.
>
> I was hoping I could solve this by renaming the gwt-servlet-jakarta.jar 
> file as gwt-servlet.jar, and putting that in war/WEB-INF/lib, but it 
> doesn't change the Eclipse behavior, AND it originally generated an error 
> that the size of that jar did not match the SDK... but after a clean-build 
> that problem (at least) went away.
>
> But my underlying problem is that I have classes that need to extend the 
> RemoteServiceServlet, and access the associated ServletContext, 
> HttpServletRequest, SerializationException and other classes that must all 
> be the jakarta (not javax) versions. 
>
> I can go back to using javax (and I'm not at all certain that the Eclipse 
> embedded Jatty server will use jakarta instead of javax, so maybe jakarta 
> won't work locally anyway)... but then I have to solve a problem where GWT 
> dev mode (with javax) gives me:
>
> Error occurred during initialization of boot layer
> java.lang.module.FindException: Module gwt.user not found, required by 
> com.x.myapp
>
> Or do I have to move into a world where I stop using the so-convenient 
> embedded Jetty and deploy to and run an external server?
>
> Any advice on what to do (or, preferably, a deeper understanding of what 
> is happening) would be greatly appreciated.
>

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/d97a9520-dab4-4bcd-b63b-e9b86ac0b930n%40googlegroups.com.


Re: Really need help getting CodeServer to run with Java 11 and GWT 2.10

2024-04-12 Thread Jens
A full example for multiple maven modules (more than just three) can be 
found here: https://github.com/tbroyer/gwt-maven-plugin/tree/main/src/it/e2e

You have to add gwt-lib to your own maven library 
modules that contain a module.gwt.xml file. Maybe you forgot that?

-- J.

Mathias schrieb am Freitag, 12. April 2024 um 07:50:42 UTC+2:

> I *really* could use some help getting my project up for development 
> after moving to gwt 2.10 and Java 11.
> I can unfortunately nolonger use the GWT intellij plugin i've loved and 
> used for 12 years apparently, and i'm struggling a bit to get the 
> codeserver running for my project.
>
> *CURRENT STATUS:*
> My project is over 12 years, but i migrated it from the old gwt mojo 
> plugin to the new tbroyer one last year.
> It builds into a war fine and deploys on tomcat. Prior to the migration to 
> GWT 2.10 (with new Jetty) and Java 11, i could run it with the GWT Intellij 
> plugin, which I've loved and used for those same 12 years. 
> But now the plugin unfortunately doesn't work, and from what I can tell 
> due to the JettyLauncher, (I get lots of classnotfounds for for example 
> javax.sql.DataSource)  it's kind of impossible to make it run? So I thought 
> I'd try what people have been saying, move to the manual thing with server 
> and code server, even though it's a more cumbersome setup.
>
> As part of trying to get this show on the road, i created an archetype 
> project and got codeserver and server running according to the new v2 
> tutorial. This works fine.
>
> *PROBLEM:*
> Basically i can't get the codeserver to run. My project is pretty large so 
> my "webclient" module that contains my gwt client has a bunch of 
> dependencies on my own child modules, and a couple of third-party ones such 
> as Lombok.
>
>
> When i try the codeserver with this command (from the tutorial)
> * mvn gwt:codeserver -pl webclient -am*
>
> ,where the webclient is the module containing the gwt code and entry 
> point, standing in the root dir of my project,
> ,i get page up and page down filled with missing dependencies from stuff 
> and "did you forget to inherit"-errors. (see error extract at the bottom)
>
> -I'm not sure if this has something to do with the "workdir", the 
> directory i stand in when i try to start the codeserver as described above, 
> some dependency declaration i'm missing or something else.
>
> -My dependencies should be ok since i can build it with the plugin, so i'm 
> a bit at a loss as to how make this work.
>
> -Help would be much appreciated, right now i can't develop and rolling our 
> project back to 2.8 and Java 8 wouldn't be great and take time. Man how I 
> wish that the intellij plugin had just kept working.
>
> as a final aside:
> The "neither a gwt-lib or jar" warning messages in the error log below - i 
> still get it if i add the gwt-lib type to the dependency, and the archetype 
> project prints the same error when created.
>
> *Extract from the error log:*
>
> [INFO] Ignoring com.myproject:generalcommons:jar:1.0-SNAPSHOT; neither a 
> gwt-lib or jar:sources; Did you forget to use gwt-lib in the 
> dependency declaration?
> [INFO] Ignoring com.myproject:webshared:jar:1.0-SNAPSHOT; neither a 
> gwt-lib or jar:sources; Did you forget to use gwt-lib in the 
> dependency declaration?
> [INFO] Ignoring com.myproject:webmaps:jar:1.0-SNAPSHOT; neither a gwt-lib 
> or jar:sources; Did you forget to use gwt-lib in the 
> dependency declaration?
> [INFO] Ignoring com.myproject:webshared:jar:1.0-SNAPSHOT; neither a 
> gwt-lib or jar:sources; Did you forget to use gwt-lib in the 
> dependency declaration?
> [INFO] Turning off precompile in incremental mode.
> [INFO] Super Dev Mode starting up
> [INFO]workDir: /Users/mathias/.projects/myproject/target/gwt/codeserver
> [INFO][WARN] Deactivated PrecompressLinker
> [INFO] 19:00:51.710 [main] INFO org.eclipse.jetty.util.log - Logging 
> initialized @778ms to org.eclipse.jetty.util.log.Slf4jLog
> [INFO] 19:00:51.714 [main] DEBUG 
> org.eclipse.jetty.http.PreEncodedHttpField - HttpField encoders loaded: 
> [org.eclipse.jetty.http.Http1FieldPreEncoder]
> [INFO]Loading Java files in com.myproject.client.
> [INFO]Tracing compile failure path for type 
> 'com.myproject.client.domain.group.GroupDragDropLayout'
> [INFO]   [ERROR] Errors in 
> 'file:/Users/mathias/.projects/myproject/webgwtcommons/src/main/java/com/myproject/client/domain/group/GroupDragDropLayout.java'
> [INFO]  [ERROR] Line 18: The import lombok cannot be resolved
> [INFO]  [ERROR] Line 7: The import com.myproject.common cannot be 
> resolved
> [INFO]  [ERROR] Line 32: Getter cannot be resolved to a type
> [INFO]  [ERROR] Line 114: CSConstants cannot be resolved to a 
> variable
> [INFO]Tracing compile failure path for type 
> 'com.google.gwt.validation.client.impl.ConstraintFinderImpl'
> [INFO]   [ERROR] Errors in 
> 'jar:file:/Users/mathias/.m2/repository/org/gwtproject/gwt-user/2.1

Re: Debugging the GWT application running in maven, version 2.11

2024-04-11 Thread Jens
The most up-to-date tutorial 
is https://www.gwtproject.org/gettingstarted-v2.html

It uses maven to setup a best-practice GWT project which should consist of 
three modules. One module that contains your GWT code and basically 
represents your UI, one module that contains your server side code that 
will become a *.war file and will be deployed to a servlet container and 
finally a shared project which allows you to share some common code between 
the UI and your server. You don't have to use maven, but at least you can 
use the tutorial to get an idea on how a project layout should be.

To debug your UI you have to use the browser dev tools and set breakpoints 
in the browser. To debug your server side code you would do it as with any 
other Java application and activate the Java Wire Debug Protocol (JWDP) on 
the JVM that runs the servlet container.

-- J.

Ayush Rawat schrieb am Donnerstag, 11. April 2024 um 09:08:26 UTC+2:

> Recently I got a project on GWT. Had no idea what is this thing. Slowly 
> figured out things here and there. There aren't many sources to lean from. 
> I mostly went through ChatGPT and took help from it. It made me a demo 
> project for login page, sign up page and connecting it to the mysql 
> database. I worked on client-side, server-side and shared files.
>
> In this project I made login page, sign up page, user entity, user 
> service, user service async, user service implementation. As of now my 
> frontend is working fine but can't able to connect it to the database. I am 
> using Intellij Idea Ultimate version, and there is no way I can debug this 
> code. 
>
> Will this community help me to figure this out by sharing resources and 
> you thoughts about this demo project. It's my third day working on this 
> task, and I can't see things moving. I really need your suggestions guys,  
> if needed can share my code in zip file.
>
> Also how can I debug this?
>

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/5ca25e42-280a-4840-871f-58cc1de7510dn%40googlegroups.com.


Re: NoClassDefFoundError on a particular class while running gwt:codeserver

2024-04-05 Thread Jens
Maybe your hibernate is too 
new? 
https://docs.jboss.org/errai/latest/errai/reference/html_single/#_errai_jpa 
indicates that Hibernate 4.1.1 should be used.

-- J.

Mukeya Kassindye schrieb am Donnerstag, 4. April 2024 um 21:29:21 UTC+2:

> Hi,
>
> I can't seem to be able to point out what dependency I am missing while 
> trying to run my gwt application in Devmode with gwt:codeserver.
> I can  build the program, compile it and deploy it without a problem. 
> However when I am trying to run it in devmode I am having this error :
> *java.lang.NoClassDefFoundError: Could not initialize class* 
> *org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl*
>
> I have included all dependencies related to hibernate in my pom.xml with 
> the right versions of dependency I believe. 
> What am I missing?
>  
> here is the error log : 
>
> [INFO]  Computing all possible rebind results for 
> 'org.jboss.errai.marshalling.client.api.MarshallerFactory'
> [INFO] Rebinding 
> org.jboss.errai.marshalling.client.api.MarshallerFactory
> [INFO]Invoking generator 
> org.jboss.errai.marshalling.rebind.MarshallersGenerator
> [INFO]   Generating Marshallers Bootstrapper...
> [INFO]  Computing all possible rebind results for 
> 'org.jboss.errai.ioc.client.container.IOCEnvironment'
> [INFO] Rebinding 
> org.jboss.errai.ioc.client.container.IOCEnvironment
> [INFO]Invoking generator 
> org.jboss.errai.ioc.rebind.ioc.bootstrapper.IOCEnvironmentGenerator
> [INFO]   Generating Extensions Bootstrapper...
> [INFO]  Computing all possible rebind results for 
> 'org.jboss.errai.ioc.client.Bootstrapper'
> [INFO] Rebinding org.jboss.errai.ioc.client.Bootstrapper
> [INFO]Invoking generator 
> org.jboss.errai.ioc.rebind.ioc.bootstrapper.IOCGenerator
> [INFO]   generating ioc bootstrapping code...
> *[WARNING] java.util.concurrent.ExecutionException: 
> java.lang.NoClassDefFoundError: Could not initialize class 
> org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl*
> [WARNING]   at 
> java.base/java.util.concurrent.FutureTask.report(FutureTask.java:122)
> [WARNING]   at 
> java.base/java.util.concurrent.FutureTask.get(FutureTask.java:191)
> [WARNING]   at 
> org.jboss.errai.config.rebind.AsyncGenerators$FutureWrapper.get(AsyncGenerators.java:112)
> [WARNING]   at 
> org.jboss.errai.config.rebind.AsyncGenerators$FutureWrapper.get(AsyncGenerators.java:86)
> [WARNING]   at 
> org.jboss.errai.config.rebind.AbstractAsyncGenerator.startAsyncGeneratorsAndWaitFor(AbstractAsyncGenerator.java:205)
> [WARNING]   at 
> org.jboss.errai.jpa.rebind.ErraiEntityManagerGenerator.generate(ErraiEntityManagerGenerator.java:113)
> [WARNING]   at 
> com.google.gwt.core.ext.IncrementalGenerator.generateNonIncrementally(IncrementalGenerator.java:40)
> [WARNING]   at 
> com.google.gwt.dev.javac.StandardGeneratorContext.runGeneratorIncrementally(StandardGeneratorContext.java:745)
> [WARNING]   at 
> com.google.gwt.dev.cfg.RuleGenerateWith.realize(RuleGenerateWith.java:103)
> [WARNING]   at 
> com.google.gwt.dev.shell.StandardRebindOracle$Rebinder.rebind(StandardRebindOracle.java:78)
> [INFO]  Computing all possible rebind results for 
> 'org.jboss.errai.jpa.client.local.ErraiEntityManagerFactory'
> [INFO] Rebinding 
> org.jboss.errai.jpa.client.local.ErraiEntityManagerFactory
> [INFO]Invoking generator 
> org.jboss.errai.jpa.rebind.ErraiEntityManagerGenerator
> [INFO]   [ERROR] Error generating 
> GeneratedErraiEntityManagerFactory
> [INFO] java.util.concurrent.ExecutionException: 
> java.lang.NoClassDefFoundError: Could not initialize class 
> org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl
> [INFO]  at 
> java.base/java.util.concurrent.FutureTask.report(FutureTask.java:122)
> [INFO]  at 
> java.base/java.util.concurrent.FutureTask.get(FutureTask.java:191)
> [INFO]  at 
> org.jboss.errai.config.rebind.AsyncGenerators$FutureWrapper.get(AsyncGenerators.java:112)
> [INFO]  at 
> org.jboss.errai.config.rebind.AsyncGenerators$FutureWrapper.get(AsyncGenerators.java:86)
> [INFO]  at 
> org.jboss.errai.config.rebind.AbstractAsyncGenerator.startAsyncGeneratorsAndWaitFor(AbstractAsyncGenerator.java:205)
> [WARNING]   at 
> com.google.gwt.dev.shell.StandardRebindOracle.rebind(StandardRebindOracle.java:262)
> [INFO]  at 
> org.jboss.errai.jpa.rebind.ErraiEntityManagerGenerator.generate(ErraiEntityManagerGenerator.java:113)
> [WARNING]   at 
> com.google.gwt.dev.shell.StandardRebindOracle.rebind(StandardRebindOracle.java:251)
> [INFO]  at 
> com.google.gwt.core.ext.IncrementalGenerator.generateNonIncrementally(IncrementalGenerator.java:40)
> [INFO]  at 
> com.google.gwt.dev.javac.StandardGeneratorContext.runGeneratorIncrementally(StandardGeneratorContext.java:745)
> [WARNING]   at 
> com.goo

Re: Session Management problem in flask application

2024-04-04 Thread Jens


2)i wants to test my flask app in same browser but i wants to different 
user login and if  new user login then previous user don't logout 
automatically  


If you use Chrome or a Chrome based browser then you could also create two 
chrome profiles. Profiles are fully independent of each other and you can 
open two windows, one with profile A active and the other with profile B 
active. I regularly use that with the ARC browser (a Chrome based browser) 
to fully separate work and personal stuff within the same browser.

How do you want your app to work?

If you really want different users in different tabs within the same 
browser then you can only use session-id cookies if each logged in user has 
its own URL and the session-id cookie is limited to that URL. I think 
Google does this because Google Groups allows you to login with multiple 
accounts and then switch between them. But if you activate that feature 
then the URL is like groups.google.com/u/0/.. for the first user and 
groups.google.com/u/1/.. for the second user. That way they can have a 
different set of cookies for each URL path (= user). If you don't want that 
then you cannot use cookies and you must store the session-id in memory in 
your browser app and send it via HTTP Header manually. However doing so 
means that you are logged out as soon as you close the tab because the 
session-id is lost then.


-- J. 

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/a042e89c-0b64-4d5b-a85f-7e57179b093cn%40googlegroups.com.


Re: DevMode as application server

2024-03-25 Thread Jens
You should aim to build a proper war / exploded war. Then everything tomcat 
needs is already in WEB-INF/classes and WEB-INF/lib. 

-- J.

blackh...@gmail.com schrieb am Montag, 25. März 2024 um 13:48:21 UTC+1:

> i cleaned the project and did a full rebuild. which seemed to fix the 
> reload issue.
> Now i need to know how to tell tomcat where my sources are (classpath) 
>
> i have tried using the tomcat without eclipse; So basicly starting it via 
> the (windows) service.
> I also tried starting tomcat from eclipse where you can add the project 
> sources to the classpath.
> But somehow tomcat is not loading the servlets/services
> Op maandag 25 maart 2024 om 13:14:42 UTC+1 schreef Jens:
>
>> Sure you can also use tomcat or any other servlet container as you just 
>> deploy a war file/folder.
>>
>> Does the browser actively reload the page? Or does the compile loop 
>> happen without reloading the page? I never heard of a compile loop so far 
>> so I assume that the browser actively reloads the page. Maybe you have some 
>> reload logic inside your app that is now triggered? For example if your app 
>> uses GWT-RPC you might have code that reloads the page if it detects that 
>> client and server GWT-RPC are out of sync?
>>
>> -- J.
>>
>> blackh...@gmail.com schrieb am Montag, 25. März 2024 um 12:56:56 UTC+1:
>>
>>> Hi Jens,
>>>
>>> Thank you for the quick reply. I have tomcat as external web server.
>>> That should work too, doesn't it?
>>>
>>> My files are compiled in {projectfolder}\GWT\war\demo
>>>
>>> I am letting tomcat point to that folder and if i would add the 
>>> following lines to my demo-codeserver task:
>>>
>>> 
>>>
>>> 
>>>
>>> Then i get the same result. The browser shows compiling demo, this 
>>> completes with the following logging:
>>>
>>> [java] Linking succeeded -- 4.376s
>>>
>>> [java] 13.264s total -- Compile completed
>>>
>>> [java] job's progress set to SERVING: com.sweet.demo.webclient_1_0
>>>
>>> [java] GET /recompile-requester/demo
>>>
>>> [java] Constructing StandardLinkerContext
>>>
>>> But then it starts recompiling again and again...somehow get's stuck in 
>>> a recompile loop.
>>>
>>> Op maandag 25 maart 2024 om 12:41:57 UTC+1 schreef Jens:
>>>
>>>> CodeServer has a parameter named launcherDir which should point to your 
>>>> exploded war directory. CodeServer generates a special index.nocache.js 
>>>> file which needs to be deployed with your war file. Once you have done 
>>>> that, you just have to open the url to your deployed war file.
>>>>
>>>> So in addition to CodeServer you also need a running jetty (local 
>>>> installation or via docker or possibly via eclipse jetty plugin)
>>>>
>>>> -- J.
>>>>
>>>> blackh...@gmail.com schrieb am Montag, 25. März 2024 um 11:40:37 UTC+1:
>>>>
>>>>> Hi all,
>>>>>
>>>>> With the release of GWT 2.11.0 Using DevMode as an application server 
>>>>> is deprecated.
>>>>> From the release notes:
>>>>> "Using DevMode as an application server is deprecated, and may be 
>>>>> removed or changed in a future release. Please migrate local development 
>>>>> workflows to using a general purpose server, or a custom 
>>>>> ServletContainerLauncher."
>>>>>
>>>>> We are using the Devmode as an application server and want to change, 
>>>>> to also be prepared for the future.
>>>>>
>>>>> We are using ant as the build tool and i want to know what to set up 
>>>>> to make development mode working.
>>>>>
>>>>> I did try "just" starting the code server via an ant task:
>>>>>
>>>>> 
>>>>>
>>>>> >>>>
>>>>> classname="com.google.gwt.dev.codeserver.CodeServer">
>>>>>
>>>>> 
>>>>>
>>>>> 
>>>>>
>>>>>  
>>>>>
>>>>> 
>>>>>
>>>>> 
>>>>>
>>>>> 
>>>>>
>>>>> 
>>>>>
>>>>> 
>>>>>
>>>>>  
>>>>>
>>>>> 
>>>>>
>>>>> 
>&

Re: DevMode as application server

2024-03-25 Thread Jens
Sure you can also use tomcat or any other servlet container as you just 
deploy a war file/folder.

Does the browser actively reload the page? Or does the compile loop happen 
without reloading the page? I never heard of a compile loop so far so I 
assume that the browser actively reloads the page. Maybe you have some 
reload logic inside your app that is now triggered? For example if your app 
uses GWT-RPC you might have code that reloads the page if it detects that 
client and server GWT-RPC are out of sync?

-- J.

blackh...@gmail.com schrieb am Montag, 25. März 2024 um 12:56:56 UTC+1:

> Hi Jens,
>
> Thank you for the quick reply. I have tomcat as external web server.
> That should work too, doesn't it?
>
> My files are compiled in {projectfolder}\GWT\war\demo
>
> I am letting tomcat point to that folder and if i would add the following 
> lines to my demo-codeserver task:
>
> 
>
> 
>
> Then i get the same result. The browser shows compiling demo, this 
> completes with the following logging:
>
> [java] Linking succeeded -- 4.376s
>
> [java] 13.264s total -- Compile completed
>
> [java] job's progress set to SERVING: com.sweet.demo.webclient_1_0
>
> [java] GET /recompile-requester/demo
>
> [java] Constructing StandardLinkerContext
>
> But then it starts recompiling again and again...somehow get's stuck in a 
> recompile loop.
>
> Op maandag 25 maart 2024 om 12:41:57 UTC+1 schreef Jens:
>
>> CodeServer has a parameter named launcherDir which should point to your 
>> exploded war directory. CodeServer generates a special index.nocache.js 
>> file which needs to be deployed with your war file. Once you have done 
>> that, you just have to open the url to your deployed war file.
>>
>> So in addition to CodeServer you also need a running jetty (local 
>> installation or via docker or possibly via eclipse jetty plugin)
>>
>> -- J.
>>
>> blackh...@gmail.com schrieb am Montag, 25. März 2024 um 11:40:37 UTC+1:
>>
>>> Hi all,
>>>
>>> With the release of GWT 2.11.0 Using DevMode as an application server is 
>>> deprecated.
>>> From the release notes:
>>> "Using DevMode as an application server is deprecated, and may be 
>>> removed or changed in a future release. Please migrate local development 
>>> workflows to using a general purpose server, or a custom 
>>> ServletContainerLauncher."
>>>
>>> We are using the Devmode as an application server and want to change, to 
>>> also be prepared for the future.
>>>
>>> We are using ant as the build tool and i want to know what to set up to 
>>> make development mode working.
>>>
>>> I did try "just" starting the code server via an ant task:
>>>
>>> >> >
>>>
>>> >>
>>> classname="com.google.gwt.dev.codeserver.CodeServer">
>>>
>>> 
>>>
>>> 
>>>
>>>  
>>>
>>> 
>>>
>>> 
>>>
>>> 
>>>
>>> 
>>>
>>> 
>>>
>>>  
>>>
>>> 
>>>
>>> 
>>>
>>> 
>>>
>>> 
>>>
>>> 
>>>
>>>  
>>>
>>> 
>>>
>>> 
>>>
>>> 
>>>
>>>
>>> The ant task starts and compiles the code, but when opening the url, it 
>>> keeps recompiling. part of the log:
>>>
>>>
>>> [java] GET /recompile-requester/demo
>>>
>>> [java] Constructing StandardLinkerContext
>>>
>>> [java] GET /recompile/demo
>>>
>>> [java] Job com.sweet.demo.webclient_1_192
>>>
>>> [java] job's progress set to WAITING: com.sweet.demo.webclient_1_192
>>>
>>> [java] added job to queue
>>>
>>> [java] starting job: com.foxboro.foxnl.base.demo.webclient_1_192
>>>
>>> [java] job's progress set to COMPILING: com.sweet.demo.webclient_1_192
>>>
>>> [java] job's progress set to COMPILING: com.sweet.demo.webclient_1_192
>>>
>>> [java] Constructing StandardLinkerContext
>>>
>>> [java] binding: user.agent=safari
>>>
>>> [java] skipped compile because no input files have changed
>>>
>>> [java] 0.187s total -- Compile completed
>>>
>>> [java] job's progress set to SERVING: com.sweet.demo.webclient_1_192
>>>
>>> [java] job's progress set to GONE: com.sweet.demo.webclient_1_191
>>>
>>> [java] GET /recompile-requester/demo
>>>
>>>
>>> Am i missing a parameter or is do i have the wrong approach?
>>>
>>>
>>>

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/d3e44db5-c0f1-4ba7-818f-5ca6dafceb64n%40googlegroups.com.


Re: DevMode as application server

2024-03-25 Thread Jens
CodeServer has a parameter named launcherDir which should point to your 
exploded war directory. CodeServer generates a special index.nocache.js 
file which needs to be deployed with your war file. Once you have done 
that, you just have to open the url to your deployed war file.

So in addition to CodeServer you also need a running jetty (local 
installation or via docker or possibly via eclipse jetty plugin)

-- J.

blackh...@gmail.com schrieb am Montag, 25. März 2024 um 11:40:37 UTC+1:

> Hi all,
>
> With the release of GWT 2.11.0 Using DevMode as an application server is 
> deprecated.
> From the release notes:
> "Using DevMode as an application server is deprecated, and may be removed 
> or changed in a future release. Please migrate local development workflows 
> to using a general purpose server, or a custom ServletContainerLauncher."
>
> We are using the Devmode as an application server and want to change, to 
> also be prepared for the future.
>
> We are using ant as the build tool and i want to know what to set up to 
> make development mode working.
>
> I did try "just" starting the code server via an ant task:
>
> 
>
> 
> classname="com.google.gwt.dev.codeserver.CodeServer">
>
> 
>
> 
>
>  
>
> 
>
> 
>
> 
>
> 
>
> 
>
>  
>
> 
>
> 
>
> 
>
> 
>
> 
>
>  
>
> 
>
> 
>
> 
>
>
> The ant task starts and compiles the code, but when opening the url, it 
> keeps recompiling. part of the log:
>
>
> [java] GET /recompile-requester/demo
>
> [java] Constructing StandardLinkerContext
>
> [java] GET /recompile/demo
>
> [java] Job com.sweet.demo.webclient_1_192
>
> [java] job's progress set to WAITING: com.sweet.demo.webclient_1_192
>
> [java] added job to queue
>
> [java] starting job: com.foxboro.foxnl.base.demo.webclient_1_192
>
> [java] job's progress set to COMPILING: com.sweet.demo.webclient_1_192
>
> [java] job's progress set to COMPILING: com.sweet.demo.webclient_1_192
>
> [java] Constructing StandardLinkerContext
>
> [java] binding: user.agent=safari
>
> [java] skipped compile because no input files have changed
>
> [java] 0.187s total -- Compile completed
>
> [java] job's progress set to SERVING: com.sweet.demo.webclient_1_192
>
> [java] job's progress set to GONE: com.sweet.demo.webclient_1_191
>
> [java] GET /recompile-requester/demo
>
>
> Am i missing a parameter or is do i have the wrong approach?
>
>
>

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/06134aa2-95f2-4cdf-988f-f7747185aa2an%40googlegroups.com.


Re: Autogenerate IDs for eatch widget

2024-02-06 Thread Jens
Nothing that I am aware of. Also I think you need some naming conventions 
for your debug ids anyways which makes automatic generation difficult. 
Otherwise it will be difficult to write and later understand the UI test if 
debug ids are generic like input-0, input-1, input-2. You also need to 
verify if any of your widgets might already use an ID because of CSS 
styling or element selection using document.querySelector(). This would 
break if you override the ID.

Every widget has onAttach/onDetach/onLoad/onUnload methods you can 
override. You could copy GWT's Widget class into your own source code (keep 
the original package) or give all your widgets a common super class and 
adjust the code to set a debug id. But I think you will quickly realize 
that generating stable but unique debug IDs on that abstract level will be 
difficult. Also widgets usually want debug ids on some internal meaningful 
elements as well, which you do not know at that abstract level.

-- J.


Sebastian Bota schrieb am Dienstag, 6. Februar 2024 um 09:15:33 UTC+1:

> Hello everyone. 
> I have a GWT application and for testing purposes ( using external UI 
> testing tools ) i need that each widget to have an ID set. i know it is 
> possible by using ensureDebugID(), but this approach will take forever to 
> change in my project and is very error prone.
>
> So my question, is there any way i can set an ID to each widget 
> automaticly ?
> Perhaps some kind of hook, so when a widget is added to DOM i can set the 
> ID.
> This id will be only used in test, not in production.
>
> Thank you very much for any suggestions.
> BR,
> Sebastian
>

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/c468fa99-0732-47b6-8f90-e57367b2a678n%40googlegroups.com.


Re: Running GWT 2.4.0 using JDK 17

2024-01-16 Thread Jens
Hi,

looking at your build logs it seems you have executed

ant clean dist -Dgwt.tools=/home/aarmugam/GWT_Source_code/gwt-2.4.0/tools/ 
-Dgwt.version=2.4.0
ant clean dist-dev 
-Dgwt.tools=/home/aarmugam/GWT_Source_code/gwt-2.4.0/tools/ 
-Dgwt.version=2.4.0

In both cases you have set the system property "gwt.tools" to 
"gwt-2.4.0/tools". Given the full path it looks a bit unusual so I want to 
verify that you actually did the correct thing. To build GWT you need to 
checkout two repositories: https://github.com/gwtproject/gwt 
and https://github.com/gwtproject/tools. But the system property 
"gwt.tools" is a bit confusing because the project 
https://github.com/gwtproject/gwt also has a folder "tools", see 
https://github.com/gwtproject/gwt/tree/main/tools . The system property 
 should point to the checked out project 
https://github.com/gwtproject/tools and not to the subfolder "tools" of the 
checked out project https://github.com/gwtproject/gwt.

You don't need to set the system property at all, if you checkout both 
projects next to each other, because by default the GWT build script uses 
"../tools" as value. So the easiest way is to have a folder layout like

GWT_Source_code
|--- gwt-2.4.0 (checkout of https://github.com/gwtproject/gwt)
 |--- here is also a different tools folder as part of GWT
|--- tools (checkout of https://github.com/gwtproject/tools)

So maybe verify that you have not accidentally mixed up both these tools 
folders.

-- J.

Anjana A schrieb am Dienstag, 16. Januar 2024 um 14:55:45 UTC+1:

> Colin,
>
> As mentioned earlier due to some unavoidable constraints we are unable to 
> upgrade GWT to its latest version and so we are trying out this option. I 
> have attached the GWT.2.4.0 ant build logs and GWT error related build 
> logs. I am not sure if this gonna work but just wanted to give a try and if 
> it works it will be helpful.  Thank you very much!
>
>
> Regards,
> Anjana
>
> On Tuesday, January 16, 2024 at 6:17:08 PM UTC+5:30 Colin Alworth wrote:
>
> Unfortunately, there isn't enough information to help you without redoing 
> the work you've done - most of your log looks like the jvm's own internal 
> logging, which doesn't tell me anything right away at least.
>
> What commands exactly did you use to build, and what changes did you make, 
> how did you validate that the jars you created were able to be used at all, 
> how did you ensure that the changes you made would solve the problems you 
> are after? Can you share the full build log - for certain "Unable to find 
> ..." is not the first line of logging that GWT itself emitted.
>
> In the event you are cherry-picking specific GWT commits since 2.4, to add 
> support for newer JVMs (which is to say changes that are known to add 
> support for newer JDKs), why not simply update to a newer GWT version? 
> Wouldn't it be better to use a version built and tested for what you 
> intend, than to make a custom fork of a 12 year old version?
>
> Quick testing locally shows at least that 2.8.2 will run on Java 17 for 
> the Hello sample app, which is still pretty old, having been published in 
> 2017. In the event you aren't able to update to latest, what about just 
> updating to something not quite as old, but validated to work on Java9+?
>
> On Tuesday, January 16, 2024 at 6:26:19 AM UTC-6 anjana@gmail.com 
> wrote:
>
> Hi Colin,
>
> Thanks for the response!
> As an initial step I am try to build the GWT SDK jars from source code by 
> following the instructions provided in this link - 
> https://github.com/gwtproject/gwt?tab=readme-ov-file
>
> With few corrections in GWT.2.4.0 source code was able to build jars 
> successfully with JDK 17 and also tried with JDK.1.8 (no code change made) 
> by using command ant clean dist-dev with -Dgwt.tools  from CLI as mentioned 
> in the above link.  But when I use these generated jars(gwt-dev.jar, 
> gwt-user.jar, gwt-servlet.jar, gwt-servlet-deps.jar, 
> requestfactory-apt.jar, requestfactory-client.jar, 
> requestfactory-server.jar, requestfactory-client+src.jar, 
>  requestfactory-server+src.jar, requestfactory-client-src.jar, 
>  requestfactory-server-src.jar) into my application, I am getting below 
> error-
>
> Error trace-
>
>  [java] [1.574s][info][class,load] 
> com.google.gwt.dev.javac.CompilationProblemReporter source:  
>
> [java] [1.575s][info][class,load] 
> java.lang.invoke.LambdaForm$MH/0x7fe964144000 source: 
> __JVM_LookupDefineClass__
>
>  [java] [1.575s][info][class,load] 
> java.lang.invoke.LambdaForm$MH/0x7fe964144400 source: 
> __JVM_LookupDefineClass__
>  [java] [1.576s][info][class,load] 
> java.lang.invoke.LambdaForm$MH/0x7fe964144800 source: 
> __JVM_LookupDefineClass__
>  [java] [1.576s][info][class,load] 
> java.lang.invoke.LambdaForm$MH/0x7fe964144c00 source: 
> __JVM_LookupDefineClass__
>  [java]
> *[ERROR] Unable to find type 'java.lang.Object'* [java] 
> [1.577s][info][class,load] com.google.gwt.dev.

Re: Is moving away from RPC a good idea?

2024-01-15 Thread Jens


Some mention "some annoying downsides" or "is imperfect in a lot of ways" 
regarding gwt-rpc. What are does? 


1. Client and server always need to be in sync because of serialization 
policy. So a user must reload the web app if you redeploy your application 
and have modified shared classes. 
2. If you want to use J2CL in the future you should not use it.
3. You can only use it with GWT clients unless you reimplement the wire 
format in other languages / applications. Only unofficial information about 
the wire format exists. 
4. No async servlet support
5. Command pattern doesn't work well with GWT-RPC because you cannot code 
split the client side serialization data. So your initial or leftover 
fragment contains everything that goes over the wire. Code splitting only 
works well if you have one GWT-RPC service per code split condition.

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/cc4b2a17-a072-4685-b138-34f31e46cc5fn%40googlegroups.com.


Re: Is moving away from RPC a good idea?

2024-01-12 Thread Jens
If you do not have special needs I think GWT-RPC is still fine especially 
with a jakarta version now available. But while it is easy to use it also 
has some annoying downsides you have to live with.

However there are quite some options:
- JsInterop based DTOs + JSON.parse/stringify. However you loose 
inheritance or have to write some helper code to workaround it as needed
- Use a json based library that solves the polymorphism problem for you
- Use gRPC for the web (grpc-web) which requires a proxy in front of your 
server gRPC endpoint to transparently convert binary to json
- Use websocket in either plain text mode or binary mode. If in binary mode 
you could use protobuf or similar to build the payload

Personally I always wanted to explore using nats.io, which is a message 
broker that also supports a request-reply pattern out of the box. That 
means a message channel/topic acts like a service. Nats has a 
nats-websocket library which connects browsers to the message broker and 
you can use protobuf or similar to define/generate your binary messages. 
Because you now have a message broker between clients and servers it should 
be relatively easy to scale and you get things like broadcast a message to 
all clients (push) with little effort. Nats also has a distributed KV store 
integrated if needed.

-- J.

Christian Hebert schrieb am Mittwoch, 10. Januar 2024 um 17:26:04 UTC+1:

> Hi guys, I've seen the changes in the new release regarding jakarta 
> servlets, which is great, it's a step toward jakarta but to this day,  GWT 
> is still based on the Servlet API 3.1. 
>
> Prior of seeing that change, I tried to move away from RPC calls and use 
> http requests instead. I found a nice library called RestyGWT (
> https://resty-gwt.github.io/) who can really simplify the process of 
> handling json data from/to a Rest API.
>
> So I converted my GWT remote servlets to a Rest API, made a few minor 
> changes in my client code and voilà, I was able to deploy it on a Jakarta 
> Application server since there is no GWT involved on the server side 
> anymore. 
>
> The last version of RestyGWT has been release in 2020 so I'm not sure how 
> active this project is but from what I've seen it's enough for me.
>
> So, I would like to get your thoughts on that.  Would you go on that road? 
> stick to RPC calls and wait for a version of GWT based on Jakarta? build 
> your "own" GWT with the changes introduced in the vew version?
>

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/5aaec5f2-3d64-45fc-a3d6-63b0d310684fn%40googlegroups.com.


Re: user.agent problem with GWT 2.1.0 and GXT 4.1

2023-12-11 Thread Jens
Generally Java 17 works for running GWT but source level still needs to be 
11 for GWT client/shared code as GWT only supports compiling Java 11 source 
files. Server code can be anything. If you use GWT-RPC you might need to 
add some --add-opens to your server 
JVM: https://github.com/gwtproject/gwt/pull/9791

-- J. 

Victor Colina schrieb am Freitag, 8. Dezember 2023 um 14:55:58 UTC+1:

> Thanks for the response, If I change to GWT 2.9 I can still use jdk 17? Or 
> I have to go lower?
>
> On Friday, December 8, 2023 at 9:05:37 AM UTC-4 Frank Hossfeld wrote:
>
>> Assuming you are using GWT 2.10.0, GXT expects a few things, (f.e.: 
>> user-agent ie8) which have been removed in GWT 2.10.0.
>> You have to stay with GWT 2.9.0. (see: 
>> https://docs.sencha.com/gxt/4.x/guides/announcements/Announcements.html)
>>
>> Victor Colina schrieb am Donnerstag, 7. Dezember 2023 um 17:48:29 UTC+1:
>>
>>> I'm trying to compile a simple GWT project with GXT 4. The compilation 
>>> works unitl I add the gxt.
>>>
>>> [image: imagen_2023-12-07_124453814.png]
>>>
>>>
>>>
>>> This is my gwt.xml file.
>>>
>>> [image: imagen_2023-12-07_124712961.png]
>>>
>>> If anybody can help me, thanks in advance.
>>>
>>

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/931c6599-28d0-4586-9ad0-d499c6e22114n%40googlegroups.com.


Re: Illegal reflective access in RPC serializer

2023-11-02 Thread Jens


The workaround is to use --add-opens but this basically open the 
full java.util package for reflection which is not ideal. I also tried to 
replace the custom serializer, but due to the way custom serializers are 
loaded (using the exact package name), this doesn't seems possible without 
compiling a custom jar.


You can copy the file and put it into your source directory. However you 
must also make sure that the serializer is deployed on server side and not 
only compiled to JavaScript. Serializers supplied by GWT are in 
gwt-user.jar (for JS compilation) and in gwt-servlet.jar (server). The 
easiest solution is to fork GWT itself, apply the patch and build your own 
GWT SDK for now.

 There is a plan to release 2.11 but no concrete time 
frame: https://groups.google.com/g/google-web-toolkit-contributors/c/JfIAPN6XFCo

-- J.

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/2e475bfa-4022-450a-9a4d-652c321ade34n%40googlegroups.com.


Re: GWT RPC call recognized as a Java Method Injection by Fortiweb

2023-07-24 Thread Jens


I think I asked the question before: as a long-term GWT-RPC user, what 
would be the benefit of moving to some other RPC protocol/mechanism?


Depends on your situation of course. If you want to use your existing 
backend with other clients written in other languages then GWT-RPC is a bad 
fit. While the wire format of GWT-RPC is documented, you still need to 
write the client code to generate it. Also GWT-RPC supports inheritance 
which other languages you want to use might not support. Other JS based RPC 
solutions as well as general purpose solutions like gRPC typically do not 
support inheritance.

GWT-RPC will already be annoying if you decide to have some portions of 
your app being written in a different framework since it is easier to find 
developers for that framework, e.g. angular, svelte, react, whatever. You 
would then need to define a JS api that calls into GWT code so these 
frameworks can talk to your GWT-RPC backend (or you need to provide new 
endpoints in your backend that do not talk GWT-RPC).

-- J.

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/ab08b131-3904-49b1-8920-b924c7b31c9an%40googlegroups.com.


Re: Window.Location.Reload Issue

2023-05-09 Thread Jens
GWT SDK does not have a Java method to change the Location of the top most 
window from within an iframe.

You could use elemental2 library which provides access to most JavaScript 
DOM API. Using elemental2 you can do 
DomGlobal.window.top.location.replace/assign(url)

But this will only work if both the main page and the iframe page are 
served from the same origin/domain. If main page is served from 
https://main.company.com/ and the iframe from https://iframe.company.com/ 
then some internet articles might tell you to set the Javascript property 
document.domain = company.com so that the browsers same-origin-policy uses 
only company.com. But document.domain is deprecated and instead you should 
use window.postMessage(). This allows you to send a message from the iframe 
to the main page. The main page would listen for messages and then reload 
itself if the message tells it to do so. The elemental2 library also 
provides an API for window.postMessage.

-- J.

bandya...@gmail.com schrieb am Montag, 8. Mai 2023 um 07:50:47 UTC+2:

> I am using the Window.Location provided by GWT
>
> https://www.gwtproject.org/javadoc/latest/com/google/gwt/user/client/Window.Location.html
>
> On Saturday, 6 May 2023 at 23:57:00 UTC+5:30 Vassilis Virvilis wrote:
>
>> Hi,
>>
>> It is not clear from your description but let's assume that you have 2 
>> GWT applications. One runs at the toplevel window and one runs in an 
>> iframe. At some point you want to reload the main page from the iframe.
>>
>> The thing is the iframe thinks it runs in the main window. You have to 
>> access the parent and do the reload.
>>
>> If the iframe and the main window is on the same domain then
>>
>>- 
>>https://stackoverflow.com/questions/11207900/change-parent-url-from-iframe
>>- 
>>
>> https://stackoverflow.com/questions/4361479/how-do-i-change-the-url-of-the-parent-frame
>>
>> If the iframe and main window are not on the same domain then maybe it is 
>> more difficult.
>>
>> Hope that helps.
>>
>>
>> On Sat, May 6, 2023 at 1:04 PM JaldiSeDekho  wrote:
>>
>>> Hi Everyone,
>>>
>>> I am having a GWT page with a Header, Left Nav and an iFrame besides the 
>>> left nav which reloads.
>>>
>>> After a particular condition on a button reload I want the complete 
>>> browsers page to reload, hence I am hitting the Window.Location.reload() 
>>> however this is reloading the iFrame and not the browsers page.
>>> I even tried to assign Window.Location.assign() like this, however 
>>> it opened the URL inside the iFrame.
>>>
>>> Kindly help how I can reload the browsers window completely.
>>>
>>> -- 
>>> 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-tool...@googlegroups.com.
>>> To view this discussion on the web visit 
>>> https://groups.google.com/d/msgid/google-web-toolkit/dd2d3dfd-346d-4135-ab67-569462322862n%40googlegroups.com
>>>  
>>> 
>>> .
>>>
>>
>>
>> -- 
>> Vassilis Virvilis
>>
>

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/834cac44-ef29-4868-8076-879d83e8b493n%40googlegroups.com.


Re: Can one convince code server to ignore an error and continue?

2023-02-15 Thread Jens
I am currently stuck with an error in a commercial GWT widget library that 
our project uses (GXT v4.0.2). The code generated by that library contains 
a bug: it contains a GWT.create(…)-call where the argument is an interface 
and not a class.

Actually GWT.create() usually takes an interface and during GWT compilation 
that interface is either replaced by a class using GWT rebind rules stored 
in any *.gwt.xml file or a GWT generator will be executed (also defined in 
*.gwt.xml file) which generates a class that implements that interface. 
Maybe you can find that rebind rule in any *.gwt.xml file provided by GXT 
and then you might see why it fails to replace that interface with a 
concrete class. You should be able to add your own custom rebind rules then 
to fix the issue.

But when I try to execute the application in development mode on a local 
Tomcat then the compilation that is triggered in code server by the first 
UI request yields this:
CodeServer has option -[no]failOnError. Have you tried that?

But I could imagine that this kind of error will still be reported because 
GWT wants to replace GWT.create() with new SomeClass() but does not know 
how to do it. If -nofailOnError does not work you have to try fixing the 
root cause of the issue as described above.

-- J.

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/58889dcf-dc95-4661-8c88-3904e5e28135n%40googlegroups.com.


Re: Issue with migrating to GWT 2.10

2023-01-20 Thread Jens
ASM is given a class file that has a newer byte code version than ASM 
supports. GWT 2.10 depends on ASM 9.2 and supports byte code up to Java 18. 
I am pretty sure you have an older ASM version on class path that came 
first or some Java 19+ classes.

-- J.

Paul Stockley schrieb am Donnerstag, 19. Januar 2023 um 22:33:28 UTC+1:

> I tried reducing the optimization level to 0, no difference. This has been 
> a problem in the past. I need to turn on more debug info. I tried logLevel 
> at ALL but it didn't really output anything new.
>
> On Thursday, January 19, 2023 at 4:05:22 PM UTC-5 Michael Joyner wrote:
>
>> Meh... I just saw the compile options below the empty pic.
>>
>>
>> On 1/19/23 16:04, Michael Conrad wrote:
>>
>> a) Have you tried increasing heap space?
>> b) Are you compiling production in STRICT mode? (Strongly recommended.)
>> c) Are you running SDM in STRICT compile mode? (Strongly recommended.)
>>
>> On 1/19/23 14:43, Paul Stockley wrote:
>>
>> We are trying to migrate to GWT 2.10 from 2.08. We get this internal 
>> error  
>>
>> [image: nirvana_–_ci2_build_nirvana_war_xml__nirvana_.jpg]
>>
>> Any idea how to further debug this? Our app works fine using SDM we just 
>> get this error when compiling for deployment.
>>
>> Compiler options are:  -logLevel DEBUG -war ${webapp.dir} 
>> com.ocs.nirvana.Encasa -XnoclassMetadata -XnocheckCasts 
>> -generateJsInteropExports -style ${compile.style} -strict -optimize 7
>> -- 
>> 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-tool...@googlegroups.com.
>> To view this discussion on the web visit 
>> https://groups.google.com/d/msgid/google-web-toolkit/b9d05c7f-d9eb-465f-8b70-e84627b455c0n%40googlegroups.com
>>  
>> 
>> .
>>
>>
>>
>>

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/e7780003-19d2-4cb7-89d2-7beabaff418fn%40googlegroups.com.


Re: Is there some description anywhere how to set up a decently usable GWT 2.10 development environment?

2022-12-16 Thread Jens
I use Jetty but manage it externally and not via GWT or any build tool 
plugin. Usually I use a Jetty docker container, preconfigured as much as 
possible to match production environment. Then I either mount the generated 
*.war file directly into the container or I mount a local webapps folder 
into the Jetty webapps folder inside the container.

Before using Jetty docker container I used IntelliJ Ultimate to manage 
Jetty within IntelliJ. In that scenario I had a run configuration that 
(re-)starts jetty and before doing so that run configuration executed the 
build tool to update the *.war file deployed in Jetty.

The key point in both approaches is to have a separately managed servlet 
container, ideally matching production configuration. Because of that I 
never had any issues with any GWT release or build tool plugin and I 
usually use a GWT build directly from GWT's main branch.

-- J.

mmo schrieb am Freitag, 16. Dezember 2022 um 10:22:48 UTC+1:

> Thanks the misc. links and comments! Highly appreciated. Will try to work 
> through them to get us going.
>
> @nam...@gmail.com
> > What kind of issue do you have with the dev mode (with gwt plugin on 
> eclipse) ?
> After my last eclipse update (to 2021-12) the GWT plugin (V3) just seized 
> to work. It doesn't even show up anymore (in Views, Preferences, etc.). 
> I even un- and re-installed it but it doesn't appear anywhere. According 
> to some Google-matches I am not alone with that. :-(
>
> @frank.h...@googlemail.com
> > Depending on your backend 
> We are not using a spring boot server. For testing we deploy to a Tomcat 
> and we deliver our application with an embedded tomcat. 
> That's why a setup using Tomcat would be an optimal solution.
>
>
> On Thursday, December 15, 2022 at 6:18:14 PM UTC+1 
> jh...@bouncesoftware.com wrote:
>
>> Hi, FWIW - have also been working with GWT since the start - it took a 
>> little while to get used to developing without the browser plugins (old 
>> GWT), but honestly, the "NEW" way of running GWT is much better in every 
>> way.   Stick with it and ask questions.  The community is amazing.  
>>
>> We have a GWT app that was started in 2012 and it's still a pleasure to 
>> work with a decade later.
>>
>> Unfortunately, since the project is older it isn't compatible with the 
>> newer maven plugins that make development *very* easy (2 command lines to 
>> run the app server and GWT development mode)
>>
>> We have Tomcat in production and chose to do development with a Tomcat 
>> server as well.
>>
>> Using Eclipse, Eclipse GWT Plugin, Eclipse, Java 11+, Managed Tomcat 
>> Server 9, GWT 2.9, ANT to compile the war.
>>
>> Adjust the server.xml in Eclipse to know where to find the war folder for 
>> your GWT project...
>> 
>>
>> >
>>docBase="../../../../../PROJECTNAME/war" reloadable="true"
>>
>>crossContext="true" debug="0" distributable="true">
>>
>> ...
>> >
>> Install the GWT plugin  
>> http://gwt-plugins.github.io/documentation/gwt-eclipse-plugin/Download.html
>>
>> Set the program arguments to:
>>
>> Note Bind Address lets you connect from other devices on the same network 
>> - helpful to try out the GWT app via tablet, etc.
>>
>> -port 9876 -bindAddress 0.0.0.0 -logLevel INFO -war 
>> C:\...\PROJECTNAME\war {{GWT Module Names ie.  com.app.ModuleA}}
>>
>> Set the VM arguments to:
>>
>> -Xmx1024m -Xms54m 
>>
>>
>>
>> On Thursday, December 15, 2022 at 8:13:52 AM UTC-7 
>> frank.h...@googlemail.com wrote:
>>
>>> Depending on your backend (Spring Boot or not) you can generate ready to 
>>> go Maven-projects. Use Maven goals to start the code server and the server. 
>>> And debug inside the browser. No need for a GWT-plugin inside the IDE. 
>>>
>>> Use: https://github.com/tbroyer/gwt-maven-archetypes to generate a 
>>> module with separate client, server and shared module in case you do not 
>>> have a Spring Boot server. Use: 
>>> https://github.com/NaluKit/gwt-maven-springboot-archetype in case you 
>>> prefer to use Spring Boot. This one also generates separate client-, 
>>> shared- and server-module. Both are perfect starts for an update. 
>>>
>>> When working on Windows use: *mvn:devmode *instead of *mvn:codeserver* .
>>>
>>> Frank schrieb am Donnerstag, 15. Dezember 2022 um 14:34:52 UTC+1:
>>>
 Maybe https://dev.to/ibaca/modern-gwt-first-steps-509k can help

 As a note. We use the paid version of IntelliJ. This has a GWT plugin 
 aboard which we find very usefull.

 Op woensdag 14 december 2022 om 20:50:58 UTC+1 schreef 
 maple.c...@gmail.com:

> It is a bit of a challenge to get GWT to work well in IntelliJ with 
> Jetty. We finally got it working very well a year ago, thanks to a site 
> that explained some of the key points for getting it to work. The URL of 
> the site is 
> https://imsavva.com/how-to-debug-gwt-in-2021-and-fix-error-scanning-entry/
>
> The site is a bit dated, but the main points are still valid. If you 
> use jett

Re: unable to instal and use gwt-plugin in Eclipse 2022-06 or Eclipse 2022-09

2022-11-16 Thread Jens
For the time being you can install the plugin from 

https://github.com/gwt-plugins/gwt-eclipse-plugin/issues/406#issuecomment-1278543693

The linked comment in that issue contains a download to install the plugin 
from your disk. Someone also made an update site in some other comments in 
that issue. Also note that if you use the download you might need to 
install some other Eclipse plugins the GWT plugin depends on. See my 
comment in the linked issue above.


-- J.


ngf.ch...@gmail.com schrieb am Dienstag, 15. November 2022 um 17:34:09 
UTC+1:

> I am using Eclipse IDE for Enterprise Java and Web Developers - 2022-09 
> and am unable to install and use gwt plugin.
> 1. I have before then used Eclipse IDE for Enterprise Java and Web 
> Developers - 2022-06 with the same result. The plugin doesn't install in 
> eclipse.
>
>
> How to use gwt now as i can't use it through my IDE.? 
>

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/ad3fb1c4-b62b-48f5-acb9-176da8cc7fefn%40googlegroups.com.


Re: getThreadLocalRequest.getSession null

2022-10-05 Thread Jens

>
> @Jens I debbuged in DevTools and found that for the server A, there is a 
> Post request containing a sessionId sent to it and intercepted by the 
> service containing both methods. The same request is sent to the server B 
> but doesn't contain a sessionId. I still didn't understand why. The same 
> app is deployed and by the way we can only are using IE to access web pages.
> So The sessionId is sent from both servers to the front. But only sent 
> back to server A.
>

Ok then you should check the cookie information. Is the cookie domain and 
path correct and matches both servers (I guess both servers have different 
subdomains)?

If server A response sets a cookie using "Set-Cookie: sessionId=123; 
Domain=serverA.company.com; Path=/" then this cookie will not be 
transmitted to a server on domain "serverB.company.com" because the domain 
does not match. The same is true if the server response only sends 
"Set-Cookie: sessionId=123;" because then the domain and path value will 
contain default values which are taken from the corresponding request.
You would need to set the cookie to "Domain=company.com" in order to share 
it between different subdomains.

Also, if you do not use session replication on server side, then keep in 
mind that a session created by server A is unknown to server B. In that 
case "getSession(false)" on server B would return null because it does not 
know the sessionId and "false" tells it to not create a new session 
automatically. 

-- J.

 

> @Craig both servers are working and active.I have no idea about session 
> replication, how do I check that?
>
> This is for sure related to the server, it must be some config or maybe a 
> security config? 
> Le vendredi 30 septembre 2022 à 03:50:53 UTC+2, ma...@craig-mitchell.com 
> a écrit :
>
>> Your question lacks some details.  You talk about two servers, but don't 
>> tell us if they are active-active, or just running one server at a time.
>>
>> If they are active-active, we'd need to know how you are doing your 
>> session replication between then servers.
>>
>> If you are only running one server at a time, then Jens reply is a good 
>> idea.
>>
>> I personally prefer to handle sessions myself, with a cookie and a 
>> memcache (yes, not really sessions at all), so I can easily scale.  But 
>> that's just a little side note.  :)
>>
>> Either way, this outside of GWT's responsibilities, but still happy to 
>> help.
>>
>> On Thursday, 29 September 2022 at 6:24:33 pm UTC+10 Jens wrote:
>>
>>> Use your browser dev tools to inspect the network request. You should 
>>> check if server B sends back a session id cookie and that this session id 
>>> cookie is transmitted back to the server for the second method that does 
>>> getSession(false). If it doesn't or the session is already invalidated 
>>> (either through code or through session timeout configuration on server B) 
>>> then getSession(false) will return null.
>>>
>>> -- J.
>>>
>>> dhia.xd...@gmail.com schrieb am Mittwoch, 28. September 2022 um 
>>> 12:21:36 UTC+2:
>>>
>>>> I have a gwt app that is running when deployed on tomcat on server A
>>>> For some reason the same app when is deployed on tomcat on a server B 
>>>> has a session issue
>>>>
>>>> We have Method 1 and Method 2 inside a servlet that extends 
>>>> RemoteServiceServlet
>>>>
>>>> We have a method1 in which we do:
>>>> this.getThreadLocalRequest.getSession(true).setAttribute("myuserid", 
>>>> myuserid)
>>>>
>>>> Then in a second method we do
>>>> this.getThreadLocalRequest.getSession(false).getAttribute("myuserid")
>>>> which throws a null pointer exception as getSession retuns null
>>>>
>>>> It is strange as this only happens on the server B
>>>> I have verified the tomcat config files like context.xml files and they 
>>>> are identical
>>>>
>>>> I have printed currentThread.gtId() inside both methods and they are 
>>>> different but as said no issue on server A.
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/50dfce72-bc17-4dc0-94ad-6eca08bf0b43n%40googlegroups.com.


Re: getThreadLocalRequest.getSession null

2022-09-29 Thread Jens
Use your browser dev tools to inspect the network request. You should check 
if server B sends back a session id cookie and that this session id cookie 
is transmitted back to the server for the second method that does 
getSession(false). If it doesn't or the session is already invalidated 
(either through code or through session timeout configuration on server B) 
then getSession(false) will return null.

-- J.

dhia.xd...@gmail.com schrieb am Mittwoch, 28. September 2022 um 12:21:36 
UTC+2:

> I have a gwt app that is running when deployed on tomcat on server A
> For some reason the same app when is deployed on tomcat on a server B has 
> a session issue
>
> We have Method 1 and Method 2 inside a servlet that extends 
> RemoteServiceServlet
>
> We have a method1 in which we do:
> this.getThreadLocalRequest.getSession(true).setAttribute("myuserid", 
> myuserid)
>
> Then in a second method we do
> this.getThreadLocalRequest.getSession(false).getAttribute("myuserid")
> which throws a null pointer exception as getSession retuns null
>
> It is strange as this only happens on the server B
> I have verified the tomcat config files like context.xml files and they 
> are identical
>
> I have printed currentThread.gtId() inside both methods and they are 
> different but as said no issue on server A.
>
>
>
>
>
>

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/1daa9506-05c3-46ad-92c6-d3189576ea1en%40googlegroups.com.


Re: GWT Migration from 2.1.0 to 2.9.0

2022-09-26 Thread Jens
"Cannot set properties of undefined" is the javascript equivalent of Java 
NullPointerException.

So in your code something tried to set the property "BLANK_IMAGE_URL" on 
"null".

-- J.

patil.p...@gmail.com schrieb am Montag, 26. September 2022 um 08:48:31 
UTC+2:

> Hi 
> I having beginners level knowledge with GWT, having task to migrate our 
> application from GWT 2.1.0 to 2.9.0, in process, have made required 
> changes. Application getting compiled fine but on browser its giving below 
> error
>
>  SEVERE: (TypeError) : Cannot set properties of undefined (setting 
> 'BLANK_IMAGE_URL')
> com.google.gwt.core.client.JavaScriptException :(TypeError) : Cannot set 
> properties of undefined
>
> If someone might be aware about this error, kindly revert. Thank you.
>
>

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/058d57eb-a47b-43b2-8688-12ed3e86430en%40googlegroups.com.


Re: App Server for GWT 2.10

2022-09-21 Thread Jens
If you use GWT-RPC or RequestFactory you need to choose a servlet container 
that still uses javax.servlet instead of jakarta.servlet because both these 
GWT features have a servlet component using javax.servlet.

Other than that, you can choose whatever you want.

-- J.

Valavanur Man schrieb am Dienstag, 20. September 2022 um 17:59:48 UTC+2:

> Hi,
>
> We are running GWT 2.8 with Glassfish4.  We had issues trying to run the 
> GWT (2.8) App in Glassfish 6.
>
> Currently we are looking into upgrading to GWT 2.10. Would like you know 
> what appservers are supported to run GWT 2.10 (even GWT 2.8 and beyond). Is 
> there a recommended set of servers?
>
> Appreciate any pointers.
>
> Thanks,
>

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/49aae5bd-2410-4199-95a1-e7a76b546ffan%40googlegroups.com.


Re: GXT 2.3.1 to 4.0.2 migration

2022-08-06 Thread Jens
You can create the same java file in the same package in your project's 
source directory and then adjust the implementation. It should then 
override the one in your dependencies.

-- J.

dhia.xd...@gmail.com schrieb am Samstag, 6. August 2022 um 15:49:46 UTC+2:

> do you mean to unzip the jar, modify the .java file, compile it and zip 
> into a jar ?
>
> Le vendredi 5 août 2022 à 22:19:54 UTC+2, Ricardo Serathiuk a écrit :
>
>> Try to change the line 322 of ListField to this: 
>> sb.append(m.get(prop).toString());
>>
>>
>>
>> Em sex., 5 de ago. de 2022 às 16:34, Lorenzo Aditi  
>> escreveu:
>>
>>> Hello,
>>>
>>> We used to have GWT 2.4 & GXT 2.2.5 and we migrated to GWT 2.8.1.
>>>
>>> Now I am using GWT 2.8 with gxt 2.2.5 and Jdk 1.8.0_291, even when 
>>> upgrading gxt-2.3.1a-gwt22 I still get this error when maven is 
>>> building I got this error
>>>
>>> jar:file:/war/WEB-INF/lib/gxt-2.3.1a-gwt22.jar!/com/extjs/gxt/ui/client/widget/form/ListField.java'
>>>  
>>> > Line 322: The method append(boolean) is ambiguous for the type > 
>>> StringBuffer
>>>
>>> After searching I thought it is imposible to resolve it, I don't have 
>>> the right to edit the dependency. 
>>>
>>> So I decided to upgrade gxt to 4.0.2, am I right? 
>>>
>>> but when I did all the app broke, most of the Types don't exist anymore 
>>> and the migration is not well documented on sencha website, they provide a 
>>> unique page that doesn't help.
>>>
>>> Do you have  a tutorial or a guide that helps? or maybe a workaround?
>>>
>>> Thanks
>>>
>>> -- 
>>> 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-tool...@googlegroups.com.
>>> To view this discussion on the web visit 
>>> https://groups.google.com/d/msgid/google-web-toolkit/2c202184-3d3b-4f3f-a547-50e488d4c244n%40googlegroups.com
>>>  
>>> 
>>> .
>>>
>>

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/450e6da6-0cf4-451b-b72a-b46a0734c3c2n%40googlegroups.com.


Re: [ERROR] Unexpected internal compiler error | BytecodeSignatureMaker.java:59 | at com.google.gwt.dev.Compiler.main(Compiler.java:113)

2022-08-05 Thread Jens
GWT (gwt-dev) depends on ASM 9.2 which supports up to Java 18. On your 
compile classpath you have gwt-websockets which depends on ASM 5.x. Seems 
like that ASM version is used during GWT compilation. 

ASM's ClassVisitor constructor checks the byte code version of the class 
file and if it is too high then this exception will be thrown.

-- J.

Michael Joyner schrieb am Mittwoch, 3. August 2022 um 22:36:02 UTC+2:

>
> Trying to update to gwt 2.10.0, have it mostly figured out, but I'm 
> getting the following stack trace.
>
> Any suggestions on what I need to look for?
>
> I've already did the exclude module's thing on multiple dependencies to 
> keep gwt 2.8 stuff out of the classpath. There is no GWT servlet stuff.
>
> Using Gradle, JDK 17, Linux, IntelliJU
>
> plugins {
> id "java"
> id "war"
> id "org.wisepersist.gwt"
> id "org.gretty"
> }
>
> > Task :compileGwt
> Compiling module com.newsrx.butter.Butter
> [ERROR] Unexpected internal compiler error
> java.lang.IllegalArgumentException
> at org.objectweb.asm.ClassVisitor.(Unknown Source)
> at org.objectweb.asm.ClassVisitor.(Unknown Source)
> at 
> com.google.gwt.dev.javac.BytecodeSignatureMaker$CompileDependencyVisitor.(BytecodeSignatureMaker.java:59)
> at 
> com.google.gwt.dev.javac.BytecodeSignatureMaker.visitCompileDependenciesInBytecode(BytecodeSignatureMaker.java:227)
> at 
> com.google.gwt.dev.javac.BytecodeSignatureMaker.getCompileDependencySignature(BytecodeSignatureMaker.java:209)
> at 
> com.google.gwt.dev.javac.CompiledClass.getSignatureHash(CompiledClass.java:166)
> at 
> com.google.gwt.dev.javac.Dependencies$Ref.(Dependencies.java:41)
> at 
> com.google.gwt.dev.javac.Dependencies$Ref.(Dependencies.java:36)
> at 
> com.google.gwt.dev.javac.Dependencies.resolve(Dependencies.java:100)
> at 
> com.google.gwt.dev.javac.CompilationStateBuilder$CompileMoreLater.compile(CompilationStateBuilder.java:349)
> at 
> com.google.gwt.dev.javac.CompilationStateBuilder.doBuildFrom(CompilationStateBuilder.java:532)
> at 
> com.google.gwt.dev.javac.CompilationStateBuilder.buildFrom(CompilationStateBuilder.java:464)
> at 
> com.google.gwt.dev.cfg.ModuleDef.getCompilationState(ModuleDef.java:423)
> at com.google.gwt.dev.Precompile.precompile(Precompile.java:210)
> at com.google.gwt.dev.Precompile.precompile(Precompile.java:190)
> at com.google.gwt.dev.Precompile.precompile(Precompile.java:131)
> at com.google.gwt.dev.Compiler.compile(Compiler.java:192)
> at com.google.gwt.dev.Compiler.compile(Compiler.java:143)
> at com.google.gwt.dev.Compiler.compile(Compiler.java:132)
> at com.google.gwt.dev.Compiler$1.run(Compiler.java:110)
> at 
> com.google.gwt.dev.CompileTaskRunner.doRun(CompileTaskRunner.java:55)
> at 
> com.google.gwt.dev.CompileTaskRunner.runWithAppropriateLogger(CompileTaskRunner.java:50)
> at com.google.gwt.dev.Compiler.main(Compiler.java:113)
>
>
> Dependency graph attached.
>
>
>

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/6d3ae1a3-0d62-49a6-b02e-73be14a1f6fcn%40googlegroups.com.


Re: GWT compiler keeps complaining about missing source files

2022-07-26 Thread Jens


> The GwtSpring.gwt.xml reads:
> ---
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> ... further details omitted here ...
> 



Use slash instead of dots in path="security.core" and 
path="security.core.userdetails"

-- J.

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/366efdee-6851-4842-b6e7-a3602f44275en%40googlegroups.com.


Re: GWT RPC Serialization Error

2022-07-22 Thread Jens
Your interface has a type parameter with no upper bound so it is 
effectively Object. Thus GWT does not know which classes to scan because it 
will not scan every subclass of Object. Either give your type parameter an 
upper bound using a common interface or create a dummy method in your 
service interface that returns a dummy class which references all your 
classes you want to use in your load method. 

abhiy...@gmail.com schrieb am Freitag, 22. Juli 2022 um 15:43:24 UTC+2:

> I am using GWT 2.9 and I am getting below error
>
> SEVERE: Exception while dispatching incoming RPC call
> com.google.gwt.user.client.rpc.SerializationException: Type 
> 'com.xyz.nos.model.NosOptionModel' was not included in the set of types 
> which can be serialized by this SerializationPolicy or its Class object 
> could not be loaded. For security purposes, this type will not be 
> serialized.: instance = com.xyz.nos.model.NosOptionModel@6cad8f33
>
> SEVERE: Exception while dispatching incoming RPC call
> com.google.gwt.user.client.rpc.SerializationException: Type 
> 'com.xyz.nos.model.NosOptionModel' was not included in the set of types 
> which can be serialized by this SerializationPolicy or its Class object 
> could not be loaded. For security purposes, this type will not be 
> serialized.: instance = com.xyz.nos.model.NosOptionModel@5fc5e111
>
> SEVERE: Exception while dispatching incoming RPC call
> com.google.gwt.user.client.rpc.SerializationException: Type 
> 'com.xyz.nos.model.NosCaseDetailModel' was not included in the set of types 
> which can be serialized by this SerializationPolicy or its Class object 
> could not be loaded. For security purposes, this type will not be 
> serialized.: instance = com.xyz.nos.model.NosCaseDetailModel@af3642f
>
> SEVERE: Exception while dispatching incoming RPC call
> com.google.gwt.user.client.rpc.SerializationException: Type 
> 'com.xyz.nos.model.CountryGroupModel' was not included in the set of types 
> which can be serialized by this SerializationPolicy or its Class object 
> could not be loaded. For security purposes, this type will not be 
> serialized.: instance = com.xyz.nos.model.CountryGroupModel@51987007
>
> SEVERE: Exception while dispatching incoming RPC call
> com.google.gwt.user.client.rpc.SerializationException: Type 
> 'com.xyz.nos.model.NosUser' was not included in the set of types which can 
> be serialized by this SerializationPolicy or its Class object could not be 
> loaded. For security purposes, this type will not be serialized.: instance 
> = com.xyz.nos.model.NosUser@28bbfa7f
>
> I am doing GWT RPC for populating liststore of combobox and getting above 
> exception while performing it from EntryPoint class. All the above classes 
> are Pojo's and all the fields of these classes are Serializable
>
> I have tried all possible solutions given in java - GWT - RPC 
> SerializationException - Stack Overflow 
> 
>
> I have defined my service as below 
> public interface INamedComboListDataProvider extends RemoteService {
> public List load(String name);
> }
>
> I also have checked my *serializationWhitelist *and it only contain 
> following 25 classes
> {class com.google.gwt.user.client.ui.TreeListenerCollection=true, class 
> java.lang.String=true, class 
> com.google.gwt.user.client.rpc.IncompatibleRemoteServiceException=true, 
> class com.google.gwt.user.client.ui.FocusListenerCollection=true, class 
> com.google.gwt.user.client.rpc.RpcTokenException=true, class 
> java.util.LinkedList=true, class java.lang.RuntimeException=false, class 
> com.google.gwt.user.client.ui.LoadListenerCollection=true, class 
> com.google.gwt.user.client.ui.ClickListenerCollection=true, class 
> com.google.gwt.user.client.ui.FormHandlerCollection=true, class 
> java.lang.Throwable=false, class 
> com.google.gwt.user.client.ui.KeyboardListenerCollection=true, class 
> com.google.gwt.user.client.ui.MouseListenerCollection=true, class 
> com.google.gwt.user.client.ui.TabListenerCollection=true, class 
> java.util.Vector=true, class 
> com.google.gwt.user.client.ui.ChangeListenerCollection=true, class 
> com.google.gwt.user.client.ui.ScrollListenerCollection=true, class 
> com.google.gwt.user.client.ui.PopupListenerCollection=true, class 
> com.google.gwt.user.client.ui.MouseWheelListenerCollection=true, class 
> java.util.Arrays$ArrayList=true, class java.lang.Exception=false, class 
> java.util.ArrayList=true, class java.util.Collections$EmptyList=true, class 
> java.util.Collections$SingletonList=true, class 
> com.google.gwt.user.client.ui.TableListenerCollection=true}
>
> I also have added project folder structure in attachment.
> Can anybody guide me where I am going wrong and why does the 
> serializationwhilteList does not contain the pojo models ?
>
>
>

-- 
You received this message because you are subscribed to the Google Groups "GWT 
Users" group.
To unsubscribe from this group an

Re: How interpret error messages?

2022-07-22 Thread Jens
GWT supports the validation API 1.0.0 with hibernate validator as 
implementation. GWT itself only ships/depends on the validation api but 
implementation needs to be added manually. The documentation how to use it 
can be found 
at https://www.gwtproject.org/doc/latest/DevGuideValidation.html

Please note that validation API support is unmaintained (that's why it is 
still validation API 1.0.0). A GWT user has a project for newer validation 
API, see: 

https://gitlab.com/ManfredTremmel/gwt-bean-validators

-- J.

mmo schrieb am Donnerstag, 21. Juli 2022 um 18:53:08 UTC+2:

> Sorry - if you get this twice - I accidentally have hit the PostMessage 
> button before and had to delete the message again.
>
> Just tried to dig deeper here:  the gwt-user.jar contains a file 
> /org/hibernate/validator/HibernateValidator.gwt.xml.
>
> In the GWT-file I see a section
>
>   ...
>   
> 
> 
> 
> 
>   
>   ...
> The file engine/NodeImpl.[java|class] however, is not in that .jar. 
> Where's that supposed to come from?
>
> On Thursday, July 21, 2022 at 6:39:11 PM UTC+2 mmo wrote:
>
>> When I compile my application with failOnError=true and logLevel=TRACE I 
>> see errors like this:
>>
>> ...
>> [INFO]Tracing compile failure path for type 
>> 'org.hibernate.validator.engine.PathImpl'
>> [INFO]   [ERROR] Errors in 
>> 'jar:file:/D:/m2repository/rjp/org/gwtproject/gwt-user/2.10.0/gwt-user-2.10.0.jar!/org/hibernate/validator/super/org/hibernate/validator/engine/PathImpl.java'
>> [INFO]  [ERROR] Line 202: The constructor NodeImpl(String) is 
>> undefined
>> [INFO]  [ERROR] Line 95: The constructor NodeImpl(Path.Node) is 
>> undefined
>> [INFO]  [ERROR] Line 209: The method setIndex(Integer) is 
>> undefined for the type NodeImpl
>> [INFO]  [ERROR] Line 212: The method setKey(String) is undefined 
>> for the type NodeImpl
>> [INFO]  [ERROR] Line 72: The constructor NodeImpl(String) is 
>> undefined
>> [INFO]  [ERROR] Line 84: The constructor NodeImpl(Path.Node) is 
>> undefined
>> [INFO]  [ERROR] Line 204: The method setInIterable(boolean) is 
>> undefined for the type NodeImpl
>> ...
>>
>> How does one interpret these? It seems to me as if the 
>> ...org/gwtproject/gwt-user/2.10.0/gwt-user-2.10.0.jar references some 
>> class org/hibernate/validator/engine/PathImpl.java and can't find its 
>> source.
>> Is that intgerpretation correct? If so: what do I need to import to make 
>> that source available? Certainly not the entire Hibernate sources, do I?
>>
>

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/e3e2e8b1-ab3c-4f49-9864-585c5fa80ac0n%40googlegroups.com.


Re: Your src appears not to live underneath a subpackage called 'client',but you'll need to use the directive in your module to make it accessible

2022-07-01 Thread Jens


> Content in Main.gwt.xml 
>  
> 
>  
>  
> 
> 
>
> 
> 
> 
> 
>
With that configuration the GWT compiler can see packages 
com.cname.proj.client and com.cname.proj.service in your main project. 
However your entry point is not in any of these packages. You need to move 
the entry point into the client package and update the  
accordingly.

-- J.

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/16e5b1a9-dd3b-4403-bf76-973d0370d51an%40googlegroups.com.


Re: 'Throwable.HasJavaThrowable' has invalid name '?'.

2022-06-29 Thread Jens
Yeah as Michael already said, I strongly encourage you to use "-strict" GWT 
compiler / DevMode parameter in all of your GWT projects and fix all GWT 
compile errors you are then seeing. We should have make that parameter the 
default setting long time ago. I really don't see any benefit of not using 
it.

The error you are seeing indicates that you have an old GWT 2.8.0 on your 
class path which is used for compilation. GWT 2.8.0 does not know anything 
about "*" or "?" as native JsInterop type names and thus disallows them. 
Both names have been implemented in GWT 2.8.1+ and have a special meaning. 

See: 
https://github.com/gwtproject/gwt/commit/d458a94f2810ab8e340b76bcf17fbbe0a72b188f

So use -strict to see GWT compilation errors that need to be fixed and 
check your classpath so that you really only have one GWT SDK version.

-- J.

mmo schrieb am Mittwoch, 29. Juni 2022 um 19:10:09 UTC+2:

> When compiling one of our GWT-based projects with the new GWT 2.10.0 I get:
>
> ...
> [INFO] --- gwt-maven-plugin:2.10.0:compile (default) @ zhstregisterjp-web 
> ---
> [INFO] Compiling module 
> ch.zh.ksta.zhstregisterjp.ZHStRegisterJPWebDevelopment
> [INFO]Ignored 5 units with compilation errors in first pass.
> [INFO] Compile with -strict or with -logLevel set to DEBUG or WARN to see 
> all errors.
> [INFO]Ignored 14 units with compilation errors in first pass.
> [INFO] Compile with -strict or with -logLevel set to TRACE or DEBUG to see 
> all errors.
> [INFO]Errors in com/google/gwt/emul/java/lang/Throwable.java
> [INFO]   [ERROR] Line 344: 'Throwable.HasJavaThrowable' has invalid 
> name '?'.
>
> Pardon me?
>
> Any hint or direction what I could do or search for here to get over this?
>

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/e565539a-8bd1-432b-8619-f7657404a1efn%40googlegroups.com.


Re: java.lang.ClassNotFoundException: javax.sql.DataSource when using GWT 2.9.0 + Java 11 combination

2022-06-29 Thread Jens
Without being able to see the project setup this is tough to answer.

However regardless of the exception you are seeing: Classic/Legacy DevMode 
will not work with GWT 2.9.0 correctly, because GWT 2.9.0 already uses 
JsInterop internally in its Java SDK emulation (e.g. java.util.Date uses 
it). JsInterop is not supported by classic/legacy DevMode. With GWT 2.9.0 
you have to use SuperDevMode to have a functional Java SDK emulation during 
development.

-- J.

abhiy...@gmail.com schrieb am Mittwoch, 29. Juni 2022 um 21:58:40 UTC+2:

> Hi Team,
>
> I am trying to start classic DEV mode in eclipse through GWT eclipse 
> plugin .
> I am using GWT 2.9.0 + Java 11 combination.
> I am getting below error. Can you help me in resolving the below error:
>
> [b]Caused by: java.lang.ClassNotFoundException: javax.sql.DataSource
> at 
> com.google.gwt.dev.shell.jetty.JettyLauncher$WebAppContextWithReload$WebAppClassLoaderExtension.findClass(JettyLauncher.java:478)
>  
> ~[gwt-dev-2.9.0.jar:?]
> at 
> org.eclipse.jetty.webapp.WebAppClassLoader.loadClass(WebAppClassLoader.java:441)
>  
>

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/d3be9c50-7af5-460a-a9ec-da38e6c2452bn%40googlegroups.com.


Re: What are legal "user.agent=" values?

2022-06-29 Thread Jens


> But only to now getting stuck with: 
> ...
> [INFO] --- gwt-maven-plugin:2.10.0:compile (default) @ zhquest-web ---
> [INFO] Compiling module ch.zh.ksta.zhquest.ZHQuestWebDevelopment
> [INFO] [ERROR] Unexpected internal compiler error
> [INFO] java.lang.IllegalArgumentException
> [INFO]  at org.objectweb.asm.ClassVisitor.(Unknown Source)
> [INFO]  at org.objectweb.asm.ClassVisitor.(Unknown Source)
>


Now you have conflicting versions of ASM in your class path. The 
IllegalArgumentException within ASM's ClassVisitor class constructor is 
usually thrown when you have a class file compiled with a newer Java 
version than ASM supports. So I guess you have a relatively old ASM version 
on classpath. GWT itself depends on ASM 9.2 
(see: https://mvnrepository.com/artifact/org.gwtproject/gwt-dev/2.10.0 ). 
ASM 9.2 supports java up to version 18.

-- J.

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/e71dc5da-fce6-47b4-b47a-c0c86d7b33e9n%40googlegroups.com.


Re: What are legal "user.agent=" values?

2022-06-27 Thread Jens


> So - according to the release notes which mention “FF”, “Chrome”, “IE” 
> (for IE11), “Edge”, and “Safari” as new user.agent values I changed that 
> to "Chrome, Edge". 
>

Not these values are for running HTMLUnit, not for GWT compiler.


Thus my question: what *are* the new valid user.agent values? Do they have 
> to be in all-lowercase (as the old ones) or what exactly can or does one 
> have to enter here? 
>

GWT 2.10.0 user.agent values are 

   - gecko1_8: Used for FireFox and IE 11
   - safari: Used for everything based on WebKit (Safari, Chrome, Edge, 
   Opera, ...)
   


-- J.

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/ede9f7d5-881e-4dfa-a850-719c1b1a4bf5n%40googlegroups.com.


Re: Internal Compiler Failure when trying to upgrade a GWT 2.7.0 application to 2.8.1

2022-06-27 Thread Jens


> [INFO] Caused by: java.lang.NoSuchMethodError: 
> org.eclipse.jdt.internal.compiler.lookup.MethodBinding.isDefaultMethod()Z
>

 This line indicates that you have some version of JDT / ECJ on your 
classpath during GWT compilation that is incompatible with the one that GWT 
compiler uses. JDT is embedded in gwt-dev.jar so it is possible that some 
other dependency brings in a different version.


-- J.

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/d4aa5d86-ac93-40cf-bca6-36c0fb55076bn%40googlegroups.com.


Re: Install GWT plugin for Firefox26

2022-06-25 Thread Jens
www.gwtproject.org relatively recently switched to HTTPS only. As seen at 
SSLlabs (https://www.ssllabs.com/ssltest/analyze.html?d=gwtproject.org) 
only TLS 1.2 and TLS 1.3 are supported by the server. Not sure when the 
mentioned error occurs, but you either have to download the plugin using a 
newer browser or try enabling TLS 1.2 support in FF26: 
https://blog.christophersmart.com/2014/01/15/enable-and-test-tls-1-2-in-firefox-26/

Same applies to Java. If it is too old, then you won't be able to connect.


--- J.


dis0...@gmail.com schrieb am Freitag, 24. Juni 2022 um 11:29:44 UTC+2:

> I maintain the (old) application with the GWT part. To run the system 
> locally (bugs fixing or minor code changes) I need the FF26 - and the GWT 
> plugin.
> Each time I have to setup my machine for the task, I install the FF26 and 
> the GWT plugin. No problems in the past. But this year I get the error 
> while doing it:
>
> Secure Connection Failed
> An error occurred during a connection to www.gwtproject.org. Cannot 
> communicate securely with peer: no common encryption algorithm(s). (Error 
> code: ssl_error_no_cypher_overlap) 
>
> How can I install the GWT plugin on my FF26 browser?
>
> Thanks!
>

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/eb27d3b0-1eed-4aff-b472-e8643642n%40googlegroups.com.


Re: Adding a custom attribute to Button using UiBinder?

2022-05-11 Thread Jens
UiBinder XML can only call setters on the widget itself. In the 
corresponding java file you can call button.getElement().setAttribute().

-- J.

ime...@gmail.com schrieb am Dienstag, 10. Mai 2022 um 20:55:41 UTC+2:

> All,
>
> Is there a way to add a custom attribute to a Button using UiBinder? I'm 
> looking for smth like eem-id="my-button". 
>
> Ideally it would be the button element itself, worst case the GWT 
> container.
>
> TIA,
>
> Slava
>

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/073fe01e-bd2d-45c3-93a9-5d95f89744e2n%40googlegroups.com.


Re: URGENT: GWT build crash with out of memory

2022-03-02 Thread Jens
As already said the first thing you should do is to use -strict. This makes 
sure GWT compiler does not ignore compile errors. Given you have 12 compile 
errors, you want to fix them first.

Next it looks like you have a lot of split points if you have 856 
*.cache.js files. Given that 817 of these files are less than 100kb and 
these files are usually gzipped by the web server before transferring to 
the client browser, you should try to reduce the amount of split points. I 
could imagine that analyzing the code for split point calculation might be 
the culprit.

There is also an -optimize option for the GWT compiler with values 0 - 9 (0 
= no optimizations, 9 = aggressive). I don't recall the default value but 
if it is 9 then it will do an optimize loop on the code AST until the AST 
does not change anymore. In rare cases this can end up in an endless loop. 
Using -optimize 8 usually fixes the issue as the compiler will do at most 8 
optimize loops then. So you might want to try that as well.

I have a compiled app that is roughly half the size of yours (about 15 MB) 
and it compiles fine with just 8 GB Ram. But it only has about 20 split 
points.  Using 64GB seems overkill in your case. Maybe you could also try 
making a heap dump and analyze it in Eclipse memory analyzer to see what is 
consuming all your heap memory. However analyzing a 64GB heap dump won't be 
fun either.

-- J.

viny...@gmail.com schrieb am Dienstag, 1. März 2022 um 16:27:41 UTC+1:

> Hi,
>
> We are having a quite big project, every thing was going in control but 
> from last few days our GWT project is crashing while building WAR (with 
> error out of memory).
> "*Compiling module project2.**Project2*
>
>
>
>
> *   Validating units:  Ignored 12 units with compilation errors in 
> first pass.Compile with -strict or with -logLevel set to TRACE or DEBUG to 
> see all errors.   Compiling 1 permutation*
> *  Compiling permutation 0...*
>
> *[ERROR] OutOfMemoryError: Increase heap size or lower 
> gwt.jjs.maxThreadsjava.lang.OutOfMemoryError: Java heap space*"
>
> *System  (PC) configuration on which we are building WAR is:*
> OS = WINDOWS SERVER 2019
> PROCESSOR = XEON (R) CPU E3-1225 V5 @ 3.3Ghz
> CORE = 4
> RAM = 64GB
> HARD DISK = HDD 
> C (OS drive) =  203GB free of 243GB
> E (drive) =  501GB free of 642GB
> F (drive) =  467GB free of 976GB
>
> *rest please find the PC images attached.*
>
>
> *GWT build configuration is:* 
> gwt.module=project1.Project1 project2.Project2
> gwt.output.dir=/org.yournamehere.Main
> gwt.compiler.output.style=OBFUSCATED
> gwt.compiler.jvmargs=-Xmx61440m
> gwt.compiler.local.workers=1
> gwt.compiler.logLevel=INFO
> gwt.shell.output.style=OBFUSCATED
> gwt.shell.logLevel=TRACE
>
> gwt.shell.jvmargs=-Xmx61440m
> gwt.shell.java=
> gwt.version=2.6
> gwt.shell.code.server.port=9997
> gwt.shell.port=
>
> *rest please find the  gwt.properties file attached.*
>
>
> *WAR file info:*
>
> *.WAR (Size on disk) = 577MB
>
> *project1.Project1*
> *.gwt.rpc  (count) =  1
> *.gwt.rpc (size) =  8kb
> *.cache.html (size) = 335kb
> *.nocache.js = 6kb
>
> *project2.Project2*
> *.gwt.rpc  (count) =  876
> *.gwt.rpc (size) =  9.76MB
> *.gwt.rpc (max) = 19kb - 11kb (158 files), 10kb - 8kb (718 files)
> *.cache.html (size) = 1713kb
> *.nocache.js = 6kb
> deferredjs\4D7A0074D70FA749A45BC16CDEAAFFE3\*.cache.js (count) = 856
> deferredjs\4D7A0074D70FA749A45BC16CDEAAFFE3\*.cache.js (size) = 28.6MB
> deferredjs\4D7A0074D70FA749A45BC16CDEAAFFE3\*.cache.js (max) = 4043kb(1 
> file), 446kb - 101kb (38 files), 98kb - 1kb (817 files). 
>
>
>
> *WE REQUEST TO ALL PLEASE HELP! AS DELIVERY OF THE WAR IS REQUIRED ON 
> URGENT BASIS.*
>
>
>
>
>
>

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/ef9256e5-177b-4c09-830d-437090f81d08n%40googlegroups.com.


Re: GWT and UserAgent

2022-02-24 Thread Jens
Chrome / Safari / FireFox are all freeze their user agent string so you can 
not know operating system version, device type and browser build number 
(not the major version!) anymore. This is done to make fingerprinting more 
difficult.

Here is some Chrome documentation:
https://www.chromium.org/updates/ua-reduction/

If you need to access such high entropy data you need to use a new API. GWT 
itself should not be affected by these changes since you can still sniff if 
it is Chrome / Safari / Firefox and which major version it is.

-- J.

t.br...@gmail.com schrieb am Sonntag, 20. Februar 2022 um 12:02:37 UTC+1:

> On Friday, February 18, 2022 at 6:00:24 PM UTC+1 David Nouls wrote:
>
>> Hello I read that FireFox and Chrome are deprecating the useragent string.
>
>
> Not sure where you read that and what it would really mean, particularly 
> wrt backwards compatibility: browser vendors (and spec writers) try very 
> hard not to "break the web" (e.g. its Array.prototype.includes rather than 
> Array.prototype.contains because many old-ish libraries monkey-patched the 
> Array prototype with a 'contains' method) so it's very unlikely that they 
> remove the navigator.useragent or change it in a breaking way.
> What has been envisioned is to actually freeze the version in the UA 
> string in case using a 3-digit version breaks too many websites, with 
> Chrome relegating the major version into its "minor".
> https://hacks.mozilla.org/2022/02/version-100-in-chrome-and-firefox/
>  
>
>> Is GWT depending on this and will it be impacted ?
>>
>
> GWT does depend on the UA string, but doesn't care about the browser 
> version, except in very few cases.
> Here's the main UA-sniffing code that helps select permutations, it 
> doesn't use the version (uses documentMode in Internet Explorer, which has 
> since been removed and won't be in 2.10): 
> https://github.com/gwtproject/gwt/blob/2.9.0/user/src/com/google/gwt/useragent/rebind/UserAgentPropertyGenerator.java
> And here are a few cases that care about the version:
>
>- those correctly patch all digits and won't break with 3-digit 
>versions:
>   - 
>   
> https://github.com/gwtproject/gwt/blob/2.9.0/user/src/com/google/gwt/user/client/ui/impl/PopupImplMozilla.java#L63
>   - 
>   
> https://github.com/gwtproject/gwt/blob/2.9.0/user/src/com/google/gwt/dom/client/DOMImplMozilla.java#L33
>   - 
>   
> https://github.com/gwtproject/gwt/blob/2.9.0/user/src/com/google/gwt/dom/client/DOMImplWebkit.java#L29
>   - 
>   
> https://github.com/gwtproject/gwt/blob/2.9.0/user/src/com/google/gwt/user/client/ui/impl/HyperlinkImplIE.java#L40
>   - that one would likely "break" with Chrome/110–Chrome/119, but 
>IIUC unlikely to actually break apps, only send bigger payloads because it 
>escapes more characters: 
>
> https://github.com/gwtproject/gwt/blob/2.9.0/user/src/com/google/gwt/user/client/rpc/impl/ClientSerializationStreamWriter.java#L93
>- that one is broken since Android 10: 
>
> https://github.com/gwtproject/gwt/blob/2.9.0/user/src/com/google/gwt/touch/client/TouchScroller.java#L311
>
> All other uses of navigator.useragent seem to only care about some tokens 
> like "safari", "chrome", "webkit", "msie", or "gecko".
>

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/97f7f007-7c74-4ba6-9912-c597457bbd99n%40googlegroups.com.


Re: Performance Comparison GWT Transpiler with MacBook Pro M1 Pro processor

2021-12-06 Thread Jens


> I did some tests with one of my larger GWT projects. It takes 3:55 on my 
> "old" MacBook Pro 16" i9 2.4 GHz, 64 GB RAM. Same project build on a new 
> MacBook Pro M1 Max 64 GB takes roundabout 2:00. That's an incredible 
> improvement. 


Is that project public? Then I would try it with my M1 Pro 32gb which is 
IMHO the best value for developers, unless you do graphics stuff.

-- J. 

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/d7849da9-6ac4-492d-89cb-718eecdd8e0fn%40googlegroups.com.


Re: Performance Comparison GWT Transpiler with MacBook Pro M1 Pro processor

2021-11-17 Thread Jens
Shouldn't really matter if M1 Pro or M1 Max, given that both have the same 
CPU. Also the doubled memory bandwidth of the M1 Max shouldn't matter too 
much, if at all. Have you run the benchmarks multiple times? I am pretty 
sure the 10s difference will become much smaller when using mean numbers of 
multiple runs.

In my opinion the M1 Pro is the perfect chip for development unless you 
also do graphic intense work. With less GPU cores you also get slightly 
better battery life. 

Nevertheless, the M1 performance gain is pretty nice, given that the 
MacBook Pro will be barely warm.

-- J.

lofid...@gmail.com schrieb am Dienstag, 16. November 2021 um 22:16:05 UTC+1:

> An update to my performance test article with GWT and now M1Max:
>
> https://bit.ly/GWTM1MaxPerformance
>
> Insane... fast... only 1m13s with -T 1C
>
> This is the record now 😅
>
> lofid...@gmail.com schrieb am Sonntag, 31. Oktober 2021 um 13:30:59 UTC+1:
>
>> Ahh you already have split the monolith webapp into 43 Maven modules (one 
>> Maven module == one GWT module)? So this is actually already better than 
>> ONE monolith Maven project with all the GWT modules (yes there is also such 
>> a project 😅).
>>
>> So you actually don't need to rebuild everything and can work 
>> independently per Maven == GWT module?
>>
>> Now I don't understand the problem... 😉😅
>>
>> Cheers, Lofi
>>
>> hamid@gmail.com schrieb am Samstag, 30. Oktober 2021 um 12:44:40 
>> UTC+2:
>>
>>> Yes is a big monolith maven project splited on 43 gwt module . 
>>>
>>> Le sam. 30 oct. 2021 à 09:13, Craig Mitchell  
>>> a écrit :
>>>
 Sounds like you have a real monolith.  These sort of projects usually 
 need to be split apart into seperate services.

 How many lines of code is your client?


 On Saturday, 30 October 2021 at 3:18:07 am UTC+11 hamid@gmail.com 
 wrote:

> Hi i did same comparison for my big monster gwt projet .
>
> We use gwt 2.5 with maven 3.3 jdk 1.8 . in a windows server 2016 ( 
> 8cpu , 64go ram)
>
> We got  between 50min to 1h10min for one permutation. 
>
> Do you have any susggestion to make it short .
>
> Thx
>
> Le jeu. 28 oct. 2021 à 23:38, lofid...@gmail.com  
> a écrit :
>
>> Hi All,
>>
>> I wrote a short comparison about GWT Transpiler with MacBook Pro M1 
>> Pro processor.
>>
>> https://bit.ly/GWTM1ProPerformance
>>
>> Enjoy!
>>
>> -- 
>> 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-tool...@googlegroups.com.
>> To view this discussion on the web visit 
>> https://groups.google.com/d/msgid/google-web-toolkit/e71c313a-939d-43eb-96fe-dc4b22e610f2n%40googlegroups.com
>>  
>> 
>> .
>>
> -- 
 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-tool...@googlegroups.com.

>>> To view this discussion on the web visit 
 https://groups.google.com/d/msgid/google-web-toolkit/e9d6b941-6182-4136-90e7-a289c9dad0f6n%40googlegroups.com
  
 
 .

>>>

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/23bc0e72-6935-40cc-8f1f-9c6d9e3077e5n%40googlegroups.com.


Re: jsConstructor returns undefined

2021-11-05 Thread Jens
You can use jsinterop-base library. It has a method 
'Js.asConstructorFn(Class)'

-- J.

pavel@gmail.com schrieb am Dienstag, 2. November 2021 um 09:49:41 UTC+1:

> Hi all,
>
> I have noticed that the next code returns the undefined value in gwt 2.9.0
>
> public static native  Object getCtorFn(Class cls) /*-{
> $wnd.console.log(cls)
> $wnd.console.log(c...@java.lang.Class::jsConstructor)
>
> return c...@java.lang.Class::jsConstructor;
> }-*/;
>
> Does someone know is jsConstroctor still supported?
> Or could be there is another way to achieve the same
>

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/3d3174c4-9fa8-4cc2-8208-28779434326bn%40googlegroups.com.


Re: Preventing obfuscation/inlining of a single function during GWT compilation

2021-11-05 Thread Jens
There is an annotation called 'DoNotInline' and acts as a compiler hint. So 
maybe you can fork GWT and apply that annotation to the method. But then 
you could also just change the implementation of the method to fit your 
needs.

Obfuscation itself can only be enabled/disabled globally. The only thing 
that is possible is to use JsInterop which allows you to define 
interfaces/classes that are either implemented in JS and you just want to 
access that implementation or should be exported to JS (without obfuscation 
then obviously) so that plain JS can call into GWT code. But not sure if 
hasTypeMarker() can be marked as such.

-- J.

Developer2011 schrieb am Freitag, 5. November 2021 um 00:15:39 UTC+1:

>
> To solve an issue, it would greatly simplify things to prevent the GWT 
> compiler from inlining and obfuscating the internal GWT function 
> hasTypeMarker().  That way, we can replace it in our own code.  (Yes, not 
> guaranteed to work, we know.)
>
> Is there any fine-grained control like this? We don't want to have to 
> disable obfuscation and inlining for everything.
>

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/a99538e1-4f70-49e8-9118-faaf15a123e0n%40googlegroups.com.


Re: [ANN] Akasha: Typed Browser API version 0.24 released

2021-09-15 Thread Jens
Hi,

really interesting work, but don't you think something like feature 
detection should be handled by a dedicated library like Modernizr for 
example? You likely want to check for vendor prefixed support when you do 
feature detection.

-- J.

peter.j...@gmail.com schrieb am Dienstag, 14. September 2021 um 02:48:52 
UTC+2:

> Akasha is a typed browser API layer that is always up to date with the 
> latest web specifications.
>
> Several significant changes have been made since the 0.17 announced to 
> this group. The major changes include:
>
>
>- The ability to test for features before using the feature 
>using methods such as WindowGlobal.isIndexedDBSupported(). The feature 
>tests can be done dynamically at runtime or statically at compile-time. If 
>done at compile time then the code can be compiled assuming that the 
>feature is present or absent.
>- Global execution contexts other than "window" are natively 
>supported. From a practical perspective this means it is relatively easy 
> to 
>use Akasha to write service workers and access the globals via 
>ServiceWorkerGlobal. Similarly  there exists AudioWorkletGlobal and 
>DedicatedWorkerGlobal etc. Within a GWT application, these global 
>execution contexts may still require custom linkers but are much easier to 
>write.
>
> Other changes since the 0.17 release:
>
>- Update the WebGPU spec to the W3C Working Draft, 10 September 2021 
> version. 
>This update resulted in a few minor name changes (i.e. the 
>GPURequestAdapterOptions.forceSoftware member was renamed to 
>GPURequestAdapterOptions.forceFallbackAdapter, GPUAdapter.isSoftware was 
>renamed to GPUAdapter.isFallbackAdapter) as well as improved modelling 
>of the types that contain constants (i.e. GPUMapMode no longer extends 
>JsObject and is a final class in the java binding).
>- Update the Permissions spec to the W3C Working Draft 07 September 
>2021 version. This update resulted in a few minor changes to the 
>PermissionsName enumeration, the addition of the name attribute to the 
>PermissionStatus type and the removal of the (unused) 
>PermissionSetParameters.
>- Update the WebCodecs spec to the W3C Working Draft, 8 September 2021 
> version. 
>This update resulted in many changes across several types. See the API 
> diff 
>for further details.
>- Migrate artifacts generated from the WebCodecs spec to the package 
>codecs in the java binding.
>- Update the Visual Viewport API spec to the Draft Community Group 
>Report 10 September 2021 version. This update resulted in the 
>VisualViewport.segments attribute being made optional (or Nullable in 
>the java binding).
>- Update the Web Share API spec to the W3C Working Draft 03 September 
>2021 version. This update resulted in the addition of the 
>Navigator.canShare(...) operation.
>- Update the WebXR Device API spec to the W3C Working Draft, 24 August 
>2021 version. This update resulted in several changes, check the API 
>diff for further details.
>- Update the HTML Living Standard spec to the 11 September 2021 version. 
>This update resulted in several changes, check the API diff for further 
>details. The most significant changes were the addition of 
>oncontextlost and oncontextrestored message handlers to several types 
>and the addition of isContextLost() to contexts as appropriate.
>- Updates across several specifications resulted in PostMessageOptions 
> being 
>renamed to StructuredSerializeOptions.
>- Re-fetch the entire set of specifications ensuring that the required 
>members in dictionaries appear in declaration order as initiated in 
> version 
>v0.15. This has resulted in the reordering of parameters in create() 
> methods 
>in the java binding to represent members in declaration order. This 
>impacted the following types at a minimum: StaticRangeInit, 
>XRInputSourcesChangeEventInit, RTCRtpCodecCapability, 
>RTCRtpCodecParameters, RTCRtpContributingSource, 
>RTCRtpHeaderExtensionParameters, RTCRtpParameters, RTCRtpSendParameters
>, RTCStats, RTCTrackEventInit, HkdfParams, Pbkdf2Params, 
>AllowedBluetoothDevice, AudioProcessingEventInit, IIRFilterOptions, 
>OfflineAudioContextOptions (as well as several other less used 
>dictionaries)
>- Rename several union types to reflect intent, migrate the unions to 
>the java package where they are used and convert unions to marker 
>interfaces where appropriate. i.e. The union type 
>IDBObjectStoreOrIDBIndexUnion was renamed to IDBCursorSource, 
>converted to a marker interface and migrated to the akasha.idb java 
>package. See the API diff for a full list of unions migrated.
>- Type the AudioTrack.kind attribute as an enumeration containing the 
>set of valid values.
>- Add the Resize Observer spec at W3C First Public Wo

Re: Eclipse 2020-06 JDK 11, GWT project cannot connect to Oracle Database

2021-08-16 Thread Jens


> [WARN] Server class 'org.ietf.jgss.GSSException' could not be found in the 
> web app, but was found on the system classpath
>[ERROR] Found resouce but unrecognized URL format: 
> 'jrt:/java.security.jgss/org/ietf/jgss/GSSException.class'
>

JRT urls are available since Java 9 and the embedded Jetty 9.2.x that GWT 
provides does not understand these kinds of URLs.

For complex GWT apps the recommendation is to not use the embedded Jetty 
provided by GWT. Instead use GWT CodeServer to serve GWT client code during 
development and your own Jetty server to deploy your server side code to. 
You need at least Jetty 9.4.7 and not higher than Jetty 10.x because Jetty 
11.x uses the new Jakarta EE namespace which GWT server side code does not 
support.

Also see: https://github.com/gwtproject/gwt/issues/9582

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/e7d5829d-bf69-406a-a8c0-4b5bb6fbd25fn%40googlegroups.com.


Re: Issue: Group by week to Date field in ListGrid.

2021-08-08 Thread Jens
11.07.2021 is a sunday. There are different week numbering systems in the 
world which have different first day of week definition. For example in the 
EU the first day of the week is monday while in the US / Canada it is 
sunday. That is reflected in locales and thus you are seeing that 
behaviour. 

See: https://en.wikipedia.org/wiki/Week#Other_Week_Numbering_Systems

In GWT you can see locale settings here (see property firstDayOfTheWeek 
which contains an index of the content of property weekdays):

Generic German 
(Monday): 
https://github.com/gwtproject/gwt/blob/master/user/src/com/google/gwt/i18n/client/constants/DateTimeConstantsImpl_de.properties
Generic English 
(Sunday): 
https://github.com/gwtproject/gwt/blob/master/user/src/com/google/gwt/i18n/client/constants/DateTimeConstantsImpl_en.properties
English - Great Britain 
(Monday): 
https://github.com/gwtproject/gwt/blob/master/user/src/com/google/gwt/i18n/client/constants/DateTimeConstantsImpl_en_GB.properties

So with locales it is important to pick the right country as well if 
possible instead of just the language.

-- J.

mk.l...@gmail.com schrieb am Samstag, 7. August 2021 um 19:50:38 UTC+2:

> Hi There,
>
> I have faced an issue with the List grid grouping column when column type 
> is Date and group by week.
>
> In the german locale, I used  dd.mm. format mask and
> In the English locale, I used mm/dd/ format mask.
>
> Issue:
> I set German locale grouping by week works fine but, When I set English 
> locale with the same data set I get different output.
>
> Example: I got issue in date is 11.07.2021 (dd.mm.)
> 12th July - 2021 comes in week number 27.
>
> In German locale is come in week 27 that perfect but same record in 
> English locale it shows me in week number 28. How?
>
> I attached a screenshot for both data in both locales.
>
> Please help me and guide me on what should I need to configure for that.
>
> Thanks.
>

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/60563850-75e2-4c30-9228-231b1c29a12fn%40googlegroups.com.


Re: Trying to get GWT app deployed in local Tomcat (using Eclipse)

2021-08-08 Thread Jens
When you start SuperDevMode it will generate some minimalistic output that 
should be stored in the (exploded) war directory produced by your eclipse 
plugin. That output basically is a special index.html file for development 
(which loads resources from SuperDevMode server instead of your war) and 
all files that your GWT app has defined as public resources (by default 
directories named "public" on the root of your GWT module).

In order to place that output into your exploded war directory you would 
use the SuperDevMode parameter "-launcherDir", e.g. 
"-launcherDir 
\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\".
 
For a learning experience you could also point launcherDir to some tmp 
directory first and see what it actually generates.

Given you are using Maven to launch things, you should look up how to start 
SuperDevMode with the GWT Maven plugin you are using. For example I know 
this one: https://tbroyer.github.io/gwt-maven-plugin/ which uses 
gwt:codeserver to start SuperDevMode and also lets you configure the 
launcherDir parameter.

When using SuperDevMode you do not need to GWT compile your app during the 
build of your *.war file/directory. SuperDevMode will do an initial, 
unoptimised compile and then will only compile incrementally any source 
changes. So maybe it is possible for you to skip GWT compilation while 
building the *.war directory to save some minutes.

-- J.

mmo schrieb am Freitag, 6. August 2021 um 17:05:55 UTC+2:

> I am (trying to) upgrade our GWT-based legacy application to use newer 
> Hibernate, Spring and other library versions. After some (substantial) 
> pull-ups this works mostly fine by now when deploying a fully generated and 
> packaged .war file, but building this thing always takes forever and day 
> (the infamous permutations and other steps...).
>
> Since the Jetty that's built into the GWT plugin has issues with newer 
> (multi-release) .jar files (see my different discussion) I had to switch 
> deployment of the application to Tomcat (which is our target server anyway) 
> also for development. 
>
> To speed up the development cycle I am thus trying to get this thing also 
> to run as unpacked file using Eclipse's Tomcat "server bridge". This plugin 
> deploys a web application to a temporary directory in the eclipse workspace 
> and then starts Tomcat passing it the proper settings using VM options 
> like: 
> -Dcatalina.base="\.metadata\.plugins\org.eclipse.wst.server.core\tmp0"
>  
> -Dcatalina.home="C:\Program Files\Apache Software Foundation\Tomcat 8.5" 
> -Dwtp.deploy="\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps"
> .
>
> With that the application begins to start up, I get to the point where I 
> login and get the initial index.html page but as soon as some GWT-generated 
> Java-script has to be loaded things stall. As I had to learn the entire GWT 
> generated code which - as I found out - gets compiled into directories 
> named like C
> :\Users\\AppData\Local\Temp\gwt-codeserver-8682038074388630768.tmp\.WebWar\compile-1\war\
>  is 
> *not* copied over or linked into the wtpwebapps directory.
>
> I experimented a bit and if one creates a Junction (a kind of soft-link in 
> Windows) in the wtpwebapps\   directory pointing to that 
> generated GWT code then  the application indeed starts loading the UI. 
> However, at some point it invariably dies with a popup that it couldn't 
> load the application from Super Dev Mode Server at http://localhost:9876. 
> So there are (at least) two things missing: the GWT code has to be hooked 
> or copied into the generated server configuration and apparently there must 
> also be a Dev Server available. At this point - since I don't understand 
> this (Super) Dev Mode well enough - I decided to ask in this forum:
>
> Has anyone got this working so that one can deploy a GWT application to a 
> local Tomcat instance without first having to pack everything up and deploy 
> as a .war file, so that one can essentially continue to run and debug as 
> one used to using Jetty before using the maven goals gwt:run or gwt:debug? 
>
> Is that described or documented anywhere? Or would some kind soul mind to 
> share his/her knowledge on how to get this working? 
> It doesn't have to be for Eclipse - IntelliJ would be ok as well. The 
> point is that it should not require the lengthy build-package-deploy cycle 
> because a cycle-time of >10 minutes is just unbearable for development. 
>
> Any suggestions welcome!
>

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/9a5dbff2-b606-4b04-9e07-1989d9cb1765n%40googlegroups.com.


Re: Upgrading GWT-based application - issues with JEP-238 (MultiRelease) jar files

2021-07-29 Thread Jens


> But how can I replace the Jetty embedded in the GWT Maven plugin? Or is 
> there some other way to work-around or fix this? 
>

You won't use the GWT Maven plugin to launch any GWT embedded Jetty. You 
would use a Maven Jetty plugin directly to deploy your server side code. 
Alternatively install Jetty on your host and tell it where to find *.war 
files (or exploded war directories) generated by maven.

 

> Would updating the GWT version to 2.8.2 or 2.9.0 solve this issue?
>

No. Newest GWT uses embedded Jetty 9.2.x which does not support scanning 
module-info.class files.


-- J.

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/ace210fa-72e4-4907-950f-fd28190abfd3n%40googlegroups.com.


Re: Add LIElement to UListElement and HyperLink to LIElement programmatically?

2021-07-29 Thread Jens
Hi,

take a look at com.google.gwt.dom.client.Document class. It has methods for 
creating elements and then you can just stitch them together using 
Element.appendChild() method.

If you want to abstract the logic a bit and/or you need it as Widget you 
could write your own BreadCrumbWidget extends Widget and then use the 
Document class internally to build the DOM structure as needed.

-- J.

ime...@gmail.com schrieb am Sonntag, 25. Juli 2021 um 17:30:52 UTC+2:

>
> Hi all,
>
> What's the correct way to add LIElement to UListElement and HyperLink to 
> LIElement programmatically?
>
> I'm building a breadcrumb using UL.
>
> Slava
>

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/5b2e36c7-8654-4afc-b4a8-4e5a75c21e01n%40googlegroups.com.


Re: GWT 2.9, JDK 11 project upgrade issue: HTTP ERROR: 503: SERVICE_UNAVAILABLE

2021-06-30 Thread Jens


> Currently, I'm working on installing WebLogic server 14 my in Eclipse for 
> local deployment, however, I'm not sure if this is a better way for our 
> local development as I don't have much experience with Weblogic server. The 
> production WebLogic server on Linux is maintained by another group.  
>

> Would Jetty or Tomcat server be a better choice in terms of easy 
> configuration etc.? If so, we should install the latest version, right?
>

If your server side code does not need a complete Java EE 8 server then you 
could also use Jetty/Tomcat. Since WebLogic 14 supports Servlet API 4.0 
your Jetty/Tomcat version should also support it. So for Jetty you would 
choose Jetty 10.x.

Jetty is relatively easy to configure, all you need to do is activating the 
modules/plugins you need. To deploy a *.war file to Jetty you would need 
the server, http and deploy module. You can basically do the quick setup in 
their 
documentation: 
https://www.eclipse.org/jetty/documentation/jetty-10/operations-guide/index.html#og-quick-setup

If you don't want to copy your war file into the jetty-base/webapps folder 
you could instead place a xml file into that folder which tells jetty where 
to find the *.war file, 
see: 
https://www.eclipse.org/jetty/documentation/jetty-10/operations-guide/index.html#og-deploy-jetty
 
. Since Jetty can deploy exploded war folders that xml file could point 
directly to C:/Users/jiny/gitTestUpgrade/aries/war

-- J.


-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/8a79f93b-2002-4633-8e9b-814800b2cae7n%40googlegroups.com.


Re: GWT 2.9, JDK 11 project upgrade issue: HTTP ERROR: 503: SERVICE_UNAVAILABLE

2021-06-25 Thread Jens

>
>
> The code server is ready at http://127.0.0.1:9876/
> Code server started in 4.878 s ms
> *[ERROR] jreLeakPrevention.gcDaemonFail*
> *java.lang.ClassNotFoundException: sun.misc.GC*
>

This can be ignored. GWT's class JettyLauncher tries to fix a class loader 
memory leak within sun.misc.GC but this class does not exist in that 
package in Java 11. The exception is catched and logged as error, but code 
will continue.


java.lang.RuntimeException: Error scanning entry module-info.class from jar 
> file:/C:/Users/jiny/gitTestUpgrade/aries/war/WEB-INF/lib/jakarta.xml.soap-api-1.4.1.jar
> at 
> org.eclipse.jetty.annotations.AnnotationParser.parseJar(AnnotationParser.java:913)
> at 
> org.eclipse.jetty.annotations.AnnotationParser.parse(AnnotationParser.java:831)
> at 
> org.eclipse.jetty.annotations.AnnotationConfiguration$ParserTask.call(AnnotationConfiguration.java:163)
> at 
> org.eclipse.jetty.annotations.AnnotationConfiguration$1.run(AnnotationConfiguration.java:548)
> at 
> org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:635)
> at 
> org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:555)
> at java.base/java.lang.Thread.run(Thread.java:834)
> Caused by: java.lang.UnsupportedOperationException: This feature requires 
> ASM6
> at org.objectweb.asm.ClassVisitor.visitModule(ClassVisitor.java:130)
> at org.objectweb.asm.ClassReader.readModuleAttributes(ClassReader.java:724)
> at org.objectweb.asm.ClassReader.accept(ClassReader.java:544)
> at org.objectweb.asm.ClassReader.accept(ClassReader.java:400)
> at 
> org.eclipse.jetty.annotations.AnnotationParser.scanClass(AnnotationParser.java:974)
> at 
> org.eclipse.jetty.annotations.AnnotationParser.parseJarEntry(AnnotationParser.java:956)
> at 
> org.eclipse.jetty.annotations.AnnotationParser.parseJar(AnnotationParser.java:909)
> ... 6 more
>


The embedded Jetty provided by GWT's DevMode class is too old to handle 
module-info.class files correctly during class file scanning. It basically 
requires newer ASM version.

The recommend approach for anything other than a small demo app is to not 
use the embedded Jetty provided by GWT DevMode. Instead use your own Jetty 
installation or a Jetty plugin for Gradle/Maven to deploy the server side 
part of your app. Or even better use the same application server that you 
are also using in production to minimize development/production 
differences. Once you do that you can also directly use GWT's CodeServer 
class without going through DevMode class. This will also remove the error 
log regarding sun.misc.GC.

There is also a discussion 
in https://groups.google.com/g/google-web-toolkit-contributors/c/iU9hckIab2o 
to gather feedback wether or not GWT should remove embedded Jetty support. 
It makes configuring a server more complex but you also don't run into a 
situation where everything seems to look right, but still it does not work, 
as in your case.

-- J.


-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/832317a3-a9aa-47eb-b8d6-07c55f358a01n%40googlegroups.com.


Re: Double equals

2021-03-25 Thread Jens
In GWT Boolean, Double and String are represented using their unboxed 
primitive types.

See for Double:
https://github.com/gwtproject/gwt/blob/master/user/super/com/google/gwt/emul/java/lang/Double.java#L130
https://github.com/gwtproject/gwt/blob/master/user/super/com/google/gwt/emul/java/lang/Double.java#L211
https://github.com/gwtproject/gwt/blob/master/dev/core/src/com/google/gwt/dev/jjs/impl/RewriteConstructorCallsForUnboxedTypes.java

So when compiled to JavaScript Double.equals() would be called with 
primitive types and that's why it can generally do an instance equality 
check. However Double.NaN is represented using JavaScript NaN 
(see: 
https://github.com/gwtproject/gwt/blob/master/user/super/com/google/gwt/emul/java/lang/Double.java#L35
 
) and in JavaScript NaN == NaN is always false. 

So I would consider it an emulation bug and equals() needs to check for NaN 
and handle it correctly with regard to Java behavior. Feel free to create a 
bug for it on GitHub.

-- J.


blackh...@gmail.com schrieb am Donnerstag, 25. März 2021 um 09:38:28 UTC+1:

> Can someone help me with the double.equals
> with the following simple code:
>   Double value1 = Double.NaN;
>   Double value2 = Double.NaN;
>
>   boolean result1 = value1.equals(value2);
>
> In Java result1 = true;
> In web with GWt result1 = false;
>
> Looking at the sourcecode i see that the java double has the following 
> equals method:
> public boolean equals(Object obj) { 
> 
>  
> return (obj instanceof Double) 
> 
>  
> && (doubleToLongBits(((Double)obj).value) == 
> 
>  
> doubleToLongBits(value));
>
> 
>  
> }
>
> the GWT double source code shows the following:
> @Override
> public boolean equals(Object o) {
> return checkNotNull(this) == o;
> }
>
> I do not really understand the GWT version. th emost important thing is 
> that the equals has different results between java and GWT.
> How to resolve this?
>
> Regards,
>
> Jasper
>

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/033df899-31e5-42f0-9e00-7ed1474d5313n%40googlegroups.com.


Re: CodeServer looks for (not required?) source

2021-01-11 Thread Jens


> Unreletaed to this, but Thomas one more question if I may: can you see a 
> problem with folloging Gradle task: 
>
> task gwtCodeServerManual(type: JavaExec) { 
> main = 'com.google.gwt.dev.codeserver.CodeServer' 
> classpath += files(sourceSets.main.compileClasspath, 
> sourceSets.main.runtimeClasspath) 
> args += '-logLevel ALL' 
> args += '-bindAddress 0.0.0.0' 
> args += '-port 9877' 
> args += '-launcherDir war' 
> args += '-XmethodNameDisplayMode FULL' 
> args += 'com.steatoda.mole.gwt.Desk' 
> } 
>
> From --debug output it seems that it passes parameters properly, but 
> somehow CodeServer complains (here it complains with "Unknown argument: 
> -logLevel ALL", but it will complain on ANY parameter, whichever I define 
> first): 
>

A parameter option (like ALL in -logLevel ALL) is also an argument on its 
own, so you need to split your argument string into two as needed.

Personally I define arguments the following way:

args = [
  '-sourceLevel', '11',
  '-strict',
  '-workDir', gwtCodeServerWorkDir,
  '-launcherDir', gwtCodeServerWarDir,
  '-failOnError',
  '-bindAddress', '0.0.0.0',
  '-port', port,
  '-style', 'PRETTY',
  '-XmethodNameDisplayMode', 'ABBREVIATED'
]


-- J.

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/5e7e3d02-8e81-4268-ac03-82cade22fad4n%40googlegroups.com.


Re: GWT and JDK questions

2020-10-28 Thread Jens


> I tried using @Deprecated (since="2.0", forRemoval=true) and got 
> compilation errors, then i found out that the GWT default JRE emulation 
> uses JDK8 java.lang.Deprecated which may or may not have been the culprit 
> to my issues.
> So i asked to get confirmation by the community.
>

While you can use Java 11 syntax, the emulated JRE API is on Java 8 level, 
see: https://github.com/gwtproject/gwt/issues/9547

-- J.

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/e961cf23-78e5-49ff-9c66-4b8c88b7fba7o%40googlegroups.com.


Re: Strange GWT-RPC bug upgrading from 2.7 to 2.8+

2020-10-07 Thread Jens
Well ok that devirtual function is clearly broken. Normally these kind of 
functions do instanceof dispatches to delegate an abstract method call, 
e.g. Number.intValue(), to a concrete implementation, e.g. Integer.intValue.

Below an example how it should look (GWT master branch with an example app):

function intValue__I__devirtual$_0_g$(this$static_0_g$){
  $clinit_Number_0_g$();
  return 
instanceOfDouble_0_g$(this$static_0_g$)?$intValue_0_g$(this$static_0_g$):this$static_0_g$.intValue_20_g$();
}
intValue__I__devirtual$_0_g$.displayName = 'Number.intValue__I__devirtual$';


_.intValue_20_g$ = function intValue_4_g$(){
  return this.value_73_g$;
}
_.intValue_20_g$.displayName = 'Integer.intValue';


This looks like a compiler bug to me triggered by your source code or you 
have am 3rd party GWT library that emulates either Number or Integer. A 
small reproduction project would be nice, but probably very hard to isolate 
the underlying issue.

Do you still have the issue when you comment everything in your entry point 
and just add a line that executes the GWT-RPC call that currently fails?

-- J.

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/f06b4a3a-c044-458e-b075-1aacf512694fo%40googlegroups.com.


Re: Strange GWT-RPC bug upgrading from 2.7 to 2.8+

2020-10-02 Thread Jens

>
> And there you have it... absolutely no idea why it's malfunctioning in 
> this way. Any help is greatly appreciated!
>

Ok in sourcemaps it looks indeed a bit weird. However there will be 
additional JS code executed to convert java.lang.Integer into a primitive 
int which is represented by JS number. That conversion seems to produce 
undefined.

Please use newest GWT SDK and either launch SuperDevMode or GWT compiler 
with these additional command line parameters: "-strict -style PRETTY 
-XmethodNameDisplayMode ABBREVIATED".

When doing so you make sure that no compile issue will be skipped 
(-strict), your JS code will be more readable (-style PRETTY) and you can 
more easily search for Java method names in the generated JS code 
(-XmethodName...). Next you should disable JS Source Maps support in Chrome 
Dev Tools to see the JS code.
To find the above method you would search the JS for 
"AbstractSerializationStreamWriter.addString" and should find a JS line 
that sets a displayName property. Above that line you will find the method 
implementation.

In the typical case to convert java.lang.Integer to primitive int, GWT 
should have generated JS that calls the intValue() method of Integer.


If something looks weird you might also want to double check that you do 
not have multiple versions of GWT in class path. That sometimes happened 
people when upgrading GWT and also using a bunch of third party libraries. 
Sometimes 3rd party libraries also emulate JRE classes which then do not 
match the JRE emulation in GWT SDK. This can be an additional possibility 
for unexpected JS behavior.


-- J.

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/6de9c4b0-0be8-41c6-b7b4-4ecd54ccffcdo%40googlegroups.com.


Re: Strange GWT-RPC bug upgrading from 2.7 to 2.8+

2020-10-01 Thread Jens
First of all, when updating GWT SDK you should delete your gwtUnitCache 
directory. Historically there has always been some hiccups with the cache 
when upgrading GWT. By deleting it you make sure to start a fresh compile 
without any cached information.

If that does not help you should take the stack trace you see in the 
browser console and put a break point at the location calling your GWT-RPC 
service methods. This is just to verify that the GWT-RPC method is really 
called with non null parameters as you would expect. Maybe that is not the 
case.


-- J.

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/d0025bfc-4e41-4048-9bd6-f010bd889cfdo%40googlegroups.com.


Re: Why Don’t You Use Java for Programming the Client-Side Web Apps on Web Browser?

2020-09-29 Thread Jens


> If Maven or some other tool decides to update one of the selected jars 
> used by my project, it can introduce a version marked as a high security 
> risk. That's something I can't allow.
>

You define a specific library version in your dependency management tool. 
There are also tools for Maven/Gradle that verify dependency signatures 
against a list of trusted signatures defined manually in the build script. 
That way you can make sure your download from Maven central / jcenter is 
the one you expect to download.

Here an example of using Gradle with signature 
verification: 
https://docs.gradle.org/current/userguide/dependency_verification.html

-- J.

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/5315bf85-07aa-4efe-bdb8-f8316dec5695o%40googlegroups.com.


Re: Do browser permutations matter with JsInterop?

2020-09-25 Thread Jens
JsInterop is just a convention, so permutations don't make sense here. 
Elemental2 is generated from a specification, so it does not use 
permutations. If you use Elemental2 you are responsible to apply polyfills 
in browsers that do not support the JS features you are using via 
elemental2. However there might be usages of permutations in other GWT code 
you might using, things like GWT-RPC, RequestFactory, .


-- J.

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/7f278d29-6ab0-46a7-b163-3ba4b07ce229o%40googlegroups.com.


Re: Weird type error in lambdas with generics, with JsInterop

2020-09-10 Thread Jens
Well generally it is a NullPointerException in your onSuccess method in 
FileStorageImpl. Somewhere in your code "null/undefined.inspectivity" is 
called. If your final JavaScript that produces the above exception contains 
literally the code "null.inspectivity" instead of 
"someVariableThatIsNull.inspectivity" then you likely have a JsInterop 
issue, either wrong definition of JsInterop classes/interfaces or it is a 
GWT compiler bug. 

So you have to share more code (FileStorageImpl.onSuccess, class that 
contains inspectivity field).

-- J.


-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/80e2dd9b-f3be-41c4-a863-58a0ee30e6d5o%40googlegroups.com.


Re: Experiences using event bus

2020-09-01 Thread Jens


> If I'm looking at it correctly, it provides just syntactic sugar on top of 
> GWT's own EventBus, right?


Thats true,´.
 

>  From what I can see, problem with "ghost" references in event bus which 
> would prevent subscribed objects from being garbage collected is still 
> there. 
>

Right.

But what I don't get is why you don't want to explicitly clean things up? 
If you rely on WeakRef or anything similar you depend on garbage 
collection, which isn't really great since you never know when GC will 
happen and behavior is different between browsers. So if you have an 
EventBus that uses some weak references it is likely designed as "if nobody 
has a strong reference to a registered event handler, then remove that 
event handler from the event bus". The problem is that you can not control 
GC and as long as GC does not run, these handlers will still get events, 
regardless if your app still uses these classes or not. So you have 
overhead until the browser decides to run GC and clean these weak 
references.

I would try to refactor code to make explicit event bus registration and 
deregistration easier and less error prone. For example take GWT 
Activities. The EventBus you get in its start() method is automatically 
cleaned up as soon as the activity stops. I am pretty sure there are 
options to build some classes around your existing ones to better deal with 
EventBus.

-- J.

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/442289b4-ad32-4018-8ac3-04d32d71a5b9o%40googlegroups.com.


Re: EMF with GWT and serialize problems

2020-08-27 Thread Jens


> Thanks for your help. I don't understand this sentence " *Also if you do 
> not transfer RequirementImpl directly but instead an interface that 
> RequirementImpl implements, then GWT Compiler needs to see the class+source 
> of RequirementImpl so it can treat RequirementImpl as a possible concrete 
> type that might be transferred. " *What do you understand?
>

What I meant is that you might not use RequirementImpl directly as a field 
type if RequirementImpl implements an interface. For example it you have 

interface Requirement extends Serializable {

}

class RequirementImpl implements Requirement {
  ...
}

class SomeClassToTransferWithGWT implements Serializable {
  private Requirement requirement;

  
}



then RequirementImpl must be visible to the GWT compiler.

 

> I had also read stuff on whiteList but I don't understand what means this 
> WhiteList? Do you know this?
>

Whitelist is just the list of classes that GWT-RPC allows to transfer. It 
is generated by GWT by looking at the classes reachable from your GWT-RPC 
service. To add something explicitly to the "whitelist" you need to add a 
new dummy method to your GWT-RPC service that uses the classes you want to 
add to the whitelist as parameter or return type.


-- J. 

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/c5559280-75ee-44e7-ac3f-38f838dc2b4do%40googlegroups.com.


Re: EMF with GWT and serialize problems

2020-08-26 Thread Jens
RequirementImpl must implement serializable, needs to have a default 
constructor (visibility does not matter), no final fields and there must be 
at least one serializable type found for each field that can be assigned to 
that field (which must meet the same requirements). Also if you do not 
transfer RequirementImpl directly but instead an interface that 
RequirementImpl implements, then GWT Compiler needs to see the class+source 
of RequirementImpl so it can treat RequirementImpl as a possible concrete 
type that might be transferred. 

Have you double checked these requirements? 

-- J.


Am Dienstag, 25. August 2020 17:11:53 UTC+2 schrieb Guillen Antonio:
>
> HI all,
>
> I use GWT 2.81 and EMF (Eclipse Modeling Framework) when i want send from 
> the server to the client an object of my model, I obtain this final error:
> com.google.gwt.user.client.rpc.SerializationException: Type 
> 'com.lacen.organisation.impl.RequirementImpl' was not included in the set 
> of types which can be serialized by this SerializationPolicy or its Class 
> object could not be loaded. For security purposes, this type will not be 
> serialized.: instance = 
> com.lacen.organisation.impl.RequirementImpl@2fa144e7 (name: Fkygrdphgf)
>
> I have tried to understand how to use serializationWhitelist but I have no 
> clear example.  The class RequirementImpl contains List, so I tried to 
> create ArrayList with the good type, but same pb.
>
> Can you help me, at least give me where found a claer explanation. 
>
> Tanks a lot 
> Antonio Guillen
>

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/a9d2d1f0-8352-4b8c-a59d-60f743ddbbaao%40googlegroups.com.


Re: Elemental2 and widgets

2020-06-22 Thread Jens


>
> So, where I can expect problems to start manifesting? 
>

I think if you can make sure that you only put elemental2 based components 
into GWT widgets, then it should work without major issues. But if you have 
to add a GWT widget into an elemental2 based component, then you have the 
problem of handling the widget lifecycle correctly so that event handlers 
for that GWT widget work correctly.


-- J.

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/8872e073-493a-474e-94ae-fcb762cf3a34o%40googlegroups.com.


Re: Elemental2 and widgets

2020-06-17 Thread Jens
Something like (totally untested) might work:

class WidgetAdapter extends Widget {

  WidgetAdapter(elemental2.dom.Element element) {
setElement(Js.uncheckedCast(element
));
  }

}


But keep in mind that GWT widgets have been rewritten to be J2CL compatible 
(they use jsinterop internally now and in the future might be changed to 
use elemental2 dom elements). So it is not an urgent need to switch, unless 
you really want to.

-- J.

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/372286a2-a3e8-4f0c-b187-66e1a57e6617o%40googlegroups.com.


Re: GWTC 2.9.0 has problems compiling my generics

2020-05-29 Thread Jens
So the Eclipse JDT version GWT uses has a generics bug then. Have you tried 
open the project/code in Eclipse to see if Eclipse complains as well? If 
Eclipse does not complain then it is probably fixed and we can likely just 
upgrade JDT again in GWT.

-- J.

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/1e4ad874-4106-46e6-ae82-86691ee50951%40googlegroups.com.


Re: [ANN] JRS gwt-time 1.4.8 release

2020-05-14 Thread Jens


> Is there any way to correctly extend/replace core GWT emulation?
>

You have to contribute it to GWT SDK so there is only a single emulation 
for everyone of that Java SDK class. As soon as you replace a GWT SDK 
emulation things can break badly.

-- J.

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/24dd52f8-af9c-491f-8fdf-ba121dc3ac6e%40googlegroups.com.


Re: New Presentation about Modern GWT Webapp Development

2020-05-13 Thread Jens
Personally I would not say that GWT widgets are deprecated. They are ported 
to be compatible with J2CL, they just look a bit dated because nobody has 
done a new fancy CSS for them. So it is generally fine to use them, but you 
should not expect that any new components will be added to the currently 
available ones anytime soon. But if someone is really interested in it I 
could see that widget internals could be modernized even more, a more 
modern CSS theme could be written and then gradually enhance these widgets.

I would more see them as "not recommend if you expect an evolving UI 
framework with components for all kinds of use cases, even use cases you 
don't have.".

-- J.

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/82ef2172-7834-4d19-ae57-7b4bf4279bcf%40googlegroups.com.


Re: JsInterop - fail to iterate @JsType in List

2020-05-12 Thread Jens


> Other ideas?
>

Maybe because you have used a ES6 / ECMAScript2015 class in your custom JS 
instead of a traditional function() based JS class. For example web 
components also use ES6 classes and it is not straight forward to use them 
with JsInterop / GWT.

I would start SDM / Compiler with -style PRETTY and look at / debug the JS 
to see why a cast exception occurs or try define the class without using 
ES6.

-- J.


-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/4a503353-16a0-4795-8dd4-9ea2fa14c19a%40googlegroups.com.


Re: JsInterop - fail to iterate @JsType in List

2020-05-12 Thread Jens
I am not 100% sure since I have not used JsInterop for a long time now but 
I would imagine the following:

Currently GWT will think that your native JS class "Car" is located at 
com.project.client namespace because that is the package it lives in and 
you have not provided a namespace to @JsType.

You can access the static car field because you have added the global 
namespace to @JsProperty and your custom JS has created a car field in that 
global namespace. In your for-loop I am relatively sure that GWT will try 
to verify that your Java list contains actual JS Cars so the generated JS 
will somewhere contain "$wnd.com.project.client.Car" which is undefined 
since your JS did not define it (you have defined everything in the global 
space, including the class itself)

So you should use @JsType(isNative = true, namespace = JsPackage.GLOBAL) on 
your Car class to tell GWT to use $wnd.Car since that is the location where 
you have defined that class in JS.


-- J.

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/1cddca63-75ee-48d1-ad59-ff7bc03b6b6e%40googlegroups.com.


Re: JsInterop - fail to iterate @JsType in List

2020-05-12 Thread Jens


> But it fails with the following logs:
> direct call: start
> ConsoleLogger.java:33 FAILED to iterate a @JsType in a List
> ConsoleLogger.java:55 Exception: 
> com.google.gwt.core.client.JavaScriptException: (TypeError) : Cannot read 
> property 'project' of undefined
> ConsoleLogger.java:33 TypeError: Cannot read property 'project' of 
> undefined
> at dse_g$ (App.java:75)
> at tse_g$.use_g$ [as execute_1_g$] (App.java:66)
>

Where does 'project' come from? Looks like the exception does not match the 
example code?

-- J. 

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/4576e379-7aa6-4bfa-a428-dd409593e66c%40googlegroups.com.


Re: Wrap google.maps with JSInterop

2020-04-29 Thread Jens


> I have set the compile flag:
> -generateJsInteropExports
>

You only need this when using @JsType(isNative = false) in your code.

Generally you have to wait until external JS has been loaded before you can 
access it in your GWT code. Maybe your GWT code runs too early?


-- J.

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/6b3de4da-22d2-463c-9edf-2096c5a0af09%40googlegroups.com.


Re: GWT - Angular/React Migration & Integration

2020-04-17 Thread Jens
Kind of in the same situation and I figured that using an iframe approach 
is probably the best idea. So you would need to refactor your app in a way 
that you can launch an external application in an iframe for a given menu 
item, basically the content area in your app should be an iframe. That way 
you could develop future content using a different framework (or even 
multiple different frameworks!) and also refactor current/old GWT content 
to fit into the iframe solution which shortens the compile time for these 
new minimal GWT content applications. Finally you get the freedom to only 
update parts of your application instead the whole beast.

However when doing so and your app uses history tokens / pushstate you need 
to figure out a good way to update the browser main location bar from 
within the iframe.

Personally I would consider using Angular, Vue or Svelte (with Sapper being 
the Svelte app framework). While Angular and Vue both use virtual DOM, 
Svelte does only look like it would use a virtual DOM but in reality it 
compiles down to direct DOM operations which makes it more performant than 
a virtual DOM based solution. I would only use React if there are thoughts 
about using React Native as well, but then Flutter from Google might also 
be interesting.

-- J.

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/11de90bd-b167-492a-aa78-965b6a54ee2c%40googlegroups.com.


Re: GWT 2.8.2 and IntelliJ IDEA

2020-03-17 Thread Jens
I use IntelliJ Ultimate and use the bundled Jetty integration plugin of 
IntelliJ. This is not the Jetty Runner plugin you are using. The bundled 
Jetty integration plugin lets you start a local Jetty just fine via a run 
configuration and lets you configure *.war or exploded war files to deploy. 
The run configuration as a "before launch" action that actually builds the 
war file using Gradle.

In your case it sounds like you have gwt-dev.jar on classpath and that 
Jetty Runner plugin uses the same classpath. Thus it can happen that jetty 
9.2 from gwt-dev.jar might get started.

As an alternative (if you only have IntelliJ Community Edition) you could 
just download jetty and start it locally on your dev machine without any 
IntelliJ involved. Then use IntelliJ or whatever to produce a war file into 
the jetty/webapps folder. You could also create a symlink or use a script 
to copy your compile output into that webapps folder.


-- J.

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/f8c60f86-6cda-4389-b528-131f324af44f%40googlegroups.com.


Re: Is GWT 3.0 /GWT 2.9 dead?

2020-02-19 Thread Jens


> I hope GWT 2.9 is out "soon", because we're planning to switch to Java 11 
> in the coming months, and it would be a burden to maintain a separated Java 
> version only for the frontend part (been there, done that with Java 8).
>

Java 11 syntax additions are available in GWT snapshot releases: 
https://gwt-review.googlesource.com/c/gwt/+/21540

-- J.

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/248fd9b1-a33b-4d7e-ae77-ab6c73b1ae3e%40googlegroups.com.


Re: Maven Plugin for GWT: "An internal error occurred during: "BBj - GWT Compile". Model not available for BBj"

2020-01-25 Thread Jens
Looks like Eclipse wants to resolve classpath entries using Gradle (through 
Eclipse Buildship Plugin bundled with Eclipse to support project 
configuration based on Gradle).

Maybe Gradle is enabled in your project for any reason, even though you are 
using Maven?

-- J.

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/11ba0097-08a0-4b03-8285-53e17956f134%40googlegroups.com.


Re: Maven Plugin for GWT: "An internal error occurred during: "BBj - GWT Compile". Model not available for BBj"

2020-01-25 Thread Jens
What does the Eclipse error log show? Sounds like an Eclipse / some plugin 
issue and the error log should show some stack trace.

-- J.

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/c0c5f6c5-5241-4f8b-9a19-45c4a0f252ee%40googlegroups.com.


Re: JsFunction length is zero

2020-01-14 Thread Jens


> I just got my first positive review and I noticed the 'Add Reviewer/ Add 
> CC' buttons and I am wondering if I should manually enter the names you 
> suggested previously in the thread?
>

Sure, you would use the Add Reviewer button. The person you add will then 
receive an email notification (if they haven't deactivated it).


-- J.

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/fe261053-1fbe-400d-9a8f-982249348e4a%40googlegroups.com.


Re: Execution order of cache.js versus other script tags

2019-12-11 Thread Jens
Usually you would use GWT's ScriptInjector together with ClientBundle + 
TextResource/ExternalTextResource. That way you can either embed your 
external JS into the GWT JS (TextResource) so it downloads as part of your 
app download or you let the GWT app asynchronously download the JS when 
needed (ExternalTextResource).

You can also use GWTs XML modules to include additional scripts which will 
be loaded before your entry point starts. But it could be that it won't be 
compatible with future GWT versions based on 
J2CL. 
http://www.gwtproject.org/doc/latest/DevGuideOrganizingProjects.html#DevGuideAutomaticResourceInclusion

-- J.

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/f1eced63-8c79-4410-9eea-4601ba318539%40googlegroups.com.


Re: gwt-dev.jar - uses jdk internal API not compatible for Java11

2019-12-08 Thread Jens
Cross reference: https://github.com/gwtproject/gwt/issues/9677


-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/5bca3183-ff8d-454f-979b-30cfd93f322d%40googlegroups.com.


Re: JsFunction length is zero

2019-11-27 Thread Jens


> Do you think a patch like that has any chance to be accepted? or this is 
> not considered to be an issue?
>

Seems like a valid behavior for JS libraries to check argument count, so I 
guess it should be accepted. Goktug or Roberto should probably review it.

-- J.

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/9232cdec-c84f-427a-a019-d0cef9262244%40googlegroups.com.


Re: JsFunction length is zero

2019-11-27 Thread Jens
You can see here how GWT compiler creates 
lambdas: 
https://github.com/gwtproject/gwt/blob/master/dev/core/super/com/google/gwt/dev/jjs/intrinsic/com/google/gwt/lang/Runtime.java#L162

In case you also want to try to fix the issue ;-)

-- J.

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/e6e9e9ea-e921-41c7-9283-9734902e3d41%40googlegroups.com.


Re: Has anyone come up with an annotation processor that can mimic the functionary of resources?

2019-10-21 Thread Jens
Some projects are already moved to GitHub gwtproject organization.

https://github.com/gwtproject

-- J.

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/4243ff90-9256-466c-a08d-c045aa4b3589%40googlegroups.com.


Re: Has anyone come up with an annotation processor that can mimic the functionary of resources?

2019-10-21 Thread Jens


> Do you know if there is a resource where all modules and its repository 
> are documented? I saw some google doc before, but I do not know if it is 
> the last resource with all github repo.
>

 Only that google doc and ci.vertispan.com basically.

-- J.

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/d871b176-a420-44a2-a9f4-d8ea6e8ec4ce%40googlegroups.com.


Re: Has anyone come up with an annotation processor that can mimic the functionary of resources?

2019-10-21 Thread Jens
The migrated (J2CL / GWT3 ready) version of GWT Resources uses annotation 
processing: https://github.com/treblereel/gwt-resources/

-- J.

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/aff146ac-f8d2-4b58-a5e1-b8d909507d42%40googlegroups.com.


Re: ClassCastException in some browser, but not others (

2019-10-06 Thread Jens


> Actually I believe it is a bug in closures externs from which elemental2 
> is generated. Without checking my guess is that IDBDatabase is annotated 
> with a @constructor tag rather than a @interface which is incorrect as 
> the spec defines it as an interface [1]. Unfortunately, this is a common 
> problem with some of the closure compiler externs. It does not impact 
> people using closure compiler. Unfortunately, the jsinterop-generator will 
> generate incorrect code if the extern is incorrectly annotated.
>

But they do accept fixes for these kind of things?

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/67e3a5d8-3c16-4635-a270-0306054ae630%40googlegroups.com.


Re: GWT Support for Touch Event

2019-09-08 Thread Jens


> So you are saying the browser fires a touchend event but the GWT event 
> handler isn't called as a result?
>

or touchmove

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/08d64a24-c70e-4b05-9473-c2889f384652%40googlegroups.com.


Re: GWT Support for Touch Event

2019-09-08 Thread Jens


> "Maybe you should log all events using an event preview handler to figure 
> out why your code does not work as expected." I did all these without any 
> success and coming to this forum only as a last resort for help.
>

So you are saying the browser fires a touchend event but the GWT event 
handler isn't called as a result?

The issue with help requests in the form of "something does not happen in 
my app" is that we don't have the app :) So technically it is easier for 
you to debug your app to figure out why the handler isn't called. If the 
browser did not generate a touchend event then you already have you answer. 
Or maybe you have called event.preventDefault() somewhere which causes some 
events not to fire. 

Maybe you can make a minimal example project that mimics your application 
code and shows the problem you have.

-- J.

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/21a8505d-6526-43de-b3bb-ade33da00aae%40googlegroups.com.


Re: GWT Support for Touch Event

2019-09-08 Thread Jens
Touch devices usually emulate classic click / mouse move events as well, so 
if you have handlers for both they might interfere each other and breaking 
code assumptions.

Other than that, GWT does not do any real magic when it comes to events. 
Touch events are handled the same as click events or other browser events.

Maybe you should log all events using an event preview handler to figure 
out why your code does not work as expected.

-- J.

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/b53f73fc-c2d9-4186-be49-8c96f2efa778%40googlegroups.com.


Re: Same cache file for all users

2019-08-18 Thread Jens
In web development, security is enforced on the server and not in the 
browser. Even if they would have different kind of cache files, an attacker 
could still "guess" URLs and download other files. Actually someone can 
simply login to your server and communicate with it without ever using your 
GWT app. Obfuscation in GWT is also only done to reduce code size and not 
so much to secure the source code.

If you want security, your server must check any incoming request 
(authentication and authorization).

-- J.

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/237ba1e4-1f9a-441c-8f80-b7a2670dd489%40googlegroups.com.


Re: elemental2: Native maps with primitive types?

2019-08-14 Thread Jens
JsPropertyMap.set(key, value) is marked with @DoNotAutoBox, so I guess you 
should be able to use JsPropertyMap and set int, float, double into 
it without them being auto boxed.

-- J.

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/dd759896-4174-411d-b870-593054e1c660%40googlegroups.com.


Re: elemental2: Document.createEvent ?

2019-08-13 Thread Jens


> It would be great if there was some documentation that could compare 
> and spell the differences between 
> standard cast (), Js.cast(), Js.uncheckedCast() in various use cases 
> so we could have a list of dos and donts. 
>

There is a whole section about instanceof/cast 
in 
https://docs.google.com/document/d/10fmlEYIHcyead_4R1S5wKGs1t2I7Fnp_PaNaa7XTEk0/edit#heading=h.kog1ji9nzq7y

-- J.

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/e89fdeec-6bfd-48d3-973a-a98f4287d83b%40googlegroups.com.


Re: elemental2: Document.createEvent ?

2019-08-12 Thread Jens


> final MyHTMLDocument doc = Js.cast(DomGlobal.document);  <-- this crashes 
> final MyHTMLDocument doc = Js.uncheckedCast(DomGlobal.document);  <-- this 
> works 
>

Because the native browser document isn't a MyHTMLDocument? You can only 
treat it like a MyHTMLDocument by doing a nasty unchecked cast so you can 
call that method you need.

-- J.

-- 
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+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/de0c434d-6ed6-4205-b674-0aaf697110a0%40googlegroups.com.


  1   2   3   4   5   6   7   8   9   10   >