[gwt-contrib] Re: Seeking Advice on Legacy Application Migration Strategy

2024-05-03 Thread Jens
Then the very first thing to do is stop using the embedded Jetty of GWT 
DevMode as application server. The embedded Jetty in GWT DevMode does some 
ClassLoader hacks and it often causes issues for people using the embedded 
Jetty as application server. That is the reason why GWT 2.11 has deprecated 
the use of embedded Jetty except for demo purposes. If you search for 
"jetty-web.xml" or "jetty-env.xml" on Github GWT issues then you will 
already find some issues with the above stack trace.

So you should find a solution to run a dedicated servlet container (jetty, 
tomcat, etc) that fits your workflow. 

GWT has updated its Getting Started instructions 
(https://www.gwtproject.org/gettingstarted-v2.html) to use the recommended 
project layout and a dedicated servlet container via Maven plugin. The core 
essence is to split the legacy project layout into three projects (client, 
shared, server) with dedicated classpaths and use a build tool to build a 
*.war file (or an exploded war folder) and then deploy this file/folder to 
a dedicated servlet container of your choice. The dedicated servlet 
container can then be configured as you like, usually as closely to your 
production server as possible.

Personally I don't like launching a servlet container via a build tool so I 
use a jetty docker container and a shell script to deploy the webapp.

-- J.

Wejden Mrabti schrieb am Mittwoch, 1. Mai 2024 um 17:09:57 UTC+2:

>
> thank  you @jens for your answer 
>
> I started by  upgrading gwt Only  from version 2.8.2 To 2.10.0 and I kept 
> java 8 .
> I my jetty-env.xml file  i had  org.eclipse.jetty.webapp.WebAppContext as 
> a configurationClass, so It cause fd ollowing error when launching 
> java.lang.ClassNotFoundException: 
> org.eclipse.jetty.webapp.WebAppContext
> at java.lang.ClassLoader.findClass(ClassLoader.java:523)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:418)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:351)
> at 
> org.eclipse.jetty.webapp.WebAppClassLoader.loadClass(WebAppClassLoader.java:487)
> at 
> com.google.gwt.dev.shell.jetty.JettyLauncher$WebAppContextWithReload$WebAppClassLoaderExtension.loadClass(JettyLauncher.java:458)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:351)
> at org.eclipse.jetty.util.Loader.loadClass(Loader.java:64)
> at 
> org.eclipse.jetty.xml.XmlConfiguration$JettyXmlConfiguration.nodeClass(XmlConfiguration.java:477)
> at 
> org.eclipse.jetty.xml.XmlConfiguration$JettyXmlConfiguration.configure(XmlConfiguration.java:417)
> at 
> org.eclipse.jetty.xml.XmlConfiguration.configure(XmlConfiguration.java:364)
> at 
> org.eclipse.jetty.plus.webapp.EnvConfiguration.lambda$configure$0(EnvConfiguration.java:120)
> at 
> org.eclipse.jetty.webapp.WebAppClassLoader.runWithServerClassAccess(WebAppClassLoader.java:138)
> at 
> org.eclipse.jetty.plus.webapp.EnvConfiguration.configure(EnvConfiguration.java:118)
> at org.eclipse.jetty.webapp.WebAppContext.configure(WebAppContext.java:498)
> at 
> org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.java:1409)
> at 
> org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:910)
> at 
> org.eclipse.jetty.servlet.ServletContextHandler.doStart(ServletContextHandler.java:288)
> at org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:524)
> at 
> com.google.gwt.dev.shell.jetty.JettyLauncher$WebAppContextWithReload.doStart(JettyLauncher.java:568)
> at 
> org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:73)
> at 
> org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:169)
> at 
> org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:110)
> at 
> org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:97)
> at 
> org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:73)
> at 
> org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:169)
> at org.eclipse.jetty.server.Server.start(Server.java:423)
> at 
> org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:110)
> at 
> org.eclipse.jetty.server.handler.AbstractHandler.doStart(AbstractHandler.java:97)
> at org.eclipse.jetty.server.Server.doStart(Server.java:387)
> at 
> org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:73)
> at 
> com.google.gwt.dev.shell.jetty.JettyLauncher.start(JettyLauncher.java:776)
> at com.google.gwt.dev.DevMode.doStartUpServer(DevMode.java:636)
> at com.google.gwt.dev.DevModeBase.startUp(DevModeBase.java:898)
> at com.google.gwt.dev.DevModeBase.run(DevModeBase.java:705)
> at com.google.gwt.dev.DevMode.main(DevMode.java:432)
> Suppressed: java.l

[gwt-contrib] Re: Seeking Advice on Legacy Application Migration Strategy

2024-04-30 Thread Jens
I would first focus on upgrading Java, GWT and possibly GXT if it is 
incompatible with newest GWT. The DataSource error will go away once you 
upgrade GWT because newer GWT versions use a newer Jetty. Keep in mind that 
in newest GWT the use of embedded Jetty as appliction server during 
development has been deprecated. It is preferred to use a local jetty 
installation, a docker container or launching jetty via a build tool plugin 
(maven / gradle).

Once you have upgraded to latest GWT you have the possibility to use GWT 
2.11-jakarta if you need to switch to Jakarta.

GWT itself only supports Hibernate 4 validation. So if the application uses 
Hibernate validation in GWT as well, then you likely need to 
use https://gitlab.com/ManfredTremmel/gwt-bean-validators

-- J.

Wejden Mrabti schrieb am Donnerstag, 25. April 2024 um 15:59:45 UTC+2:

> Hello GWT Community,
>
> I'm currently working on a large legacy application stack, using Java 8, 
> Hibernate version 5.3.20.Final, and Hibernate Search 5.11.5.Final. Our 
> frontend technology stack includes GWT version 2.8.2 and GXT version 
> 2.3.1a-gwt22. Fontend and backend arent well de-coupled.
>
> In my initial approach to modernize the application, I began by migrating 
> Hibernate to version 6.2, assuming it would be the easiest step. However, I 
> encountered an issue where Hibernate 6.2 requires transitioning to Jakarta 
> Persistence. When attempting to compile parts of my codebase, I received 
> the following error:
>
> java.lang.UnsupportedClassVersionError: jakarta/persistence/Transient has 
> been compiled by a more recent version of the Java Runtime (class file 
> version 55.0), this version of the Java Runtime only recognizes class file 
> versions up to 52.0
>
> This suggests that I need to execute my code with JDK 11. However, when 
> attempting to do so, I encountered the following issue:
>
> [ERROR] Found resouce but unrecognized URL format: 
> 'jrt:/java.sql/javax/sql/DataSource.class' java.lang.NoClassDefFoundError: 
> javax/sql/DataSource
>
> After reviewing your discussions in the GWT contributors group, I'm 
> questioning whether starting with the Hibernate migration is the right 
> approach. Should I instead prioritize migrating Java or perhaps GWT? I 
> would greatly appreciate your insights and advice based on your experiences.
>
> Thank you,
>
> WM
>

-- 
You received this message because you are subscribed to the Google Groups "GWT 
Contributors" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to google-web-toolkit-contributors+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit-contributors/d52d9aa6-5cc0-4f5b-be14-907bf758d2ecn%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 
> 

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 
> 

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] 

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.


[gwt-contrib] Re: Compiling gwt on Mac ?

2023-03-22 Thread Jens
Doctool hasn't been updated yet, 
see: https://github.com/gwtproject/gwt/pull/9780

You can install Java 8 for Mac x86 
using https://adoptium.net/de/temurin/releases/?version=8 

If you use a Mac with Apple Silicon and don't want to install Rosetta 2 you 
would need to install Java 8 from a different vendor, e.g. Azul Zulu or 
Amazon Corretto 8 (also available via brew.sh). Or you make/use a Docker 
image with Java 8 + ANT (+ Maven if you want to push the build to a 
corporate repository), mount the GWT SDK + Tools repositories and compile 
inside the container.

-- J.

stuckagain schrieb am Mittwoch, 22. März 2023 um 09:21:42 UTC+1:

> Is it possible to compile GWT on a Mac ? Is it mandatory to use Java 8, 
> that version is no longer available.
>
> I have Java 11 installed, but I get the following error:
>
>
>
> compile:
>
> [mkdir] Created dir: 
> /Users/me/Projects/gwt/build/out/build_tools/doctool/bin
>
> [javac] Compiling 10 source files to 
> /Users/me/Projects/gwt/build/out/build_tools/doctool/bin
>
> [javac] -Xbootclasspath/p is no longer a supported option.
>
> [javac] Error: Could not create the Java Virtual Machine.
>
> [javac] Error: A fatal exception has occurred. Program will exit.
>
>
>
>

-- 
You received this message because you are subscribed to the Google Groups "GWT 
Contributors" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to google-web-toolkit-contributors+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit-contributors/970b7bd7-a88f-41a4-8295-373a4118f083n%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.


[gwt-contrib] Re: New home for GWT Eclipse Plugin

2023-02-03 Thread Jens
Seems fine to use the gwtproject.org domain for it. I slightly tend towards 
plugins.gwtproject.org/eclipse because it is slightly more descriptive and 
then we could also provide plugins.gwtproject.org/browser-extensions to 
publish the last working classic dev mode browser extensions for people 
having such an old setup. Currently they are all hosted on google.com 
domain (see: https://www.gwtproject.org/missing-plugin/) and might 
disappear at any time.

As there was some trouble getting access to the marketplace maybe in the 
long run some mechanisms should be put into place to avoid that situation 
in the future. For example some online password manager with password 
sharing between trustworthy community members. I appreciate the commitment 
of Vertispan but there should be a backup plan in case something unexpected 
happens.

-- J.

Colin Alworth schrieb am Samstag, 28. Januar 2023 um 03:45:13 UTC+1:

> The GWT Eclipse Plugin has become unmaintained, and over the last several 
> months several community members have stepped up to update it to run on 
> recent Eclipse versions, and support the new GWT groupId.
>
> As part of that process, we've created a new marketplace entry, and while 
> it is still pointed at the old 3.0 release, we're preparing a new release, 
> and hope to have it out within a week.
>
> https://marketplace.eclipse.org/content/gwt-plugin/
>
> In order to deploy a new version, we need to deploy the unpacked 
> repository somewhere - which rules out a maven repository. The footprint of 
> the unpacked workspace is fairly large, around 350mb, which would be too 
> big for github pages after three releases. We could still deploy releases 
> zips, but need somewhere else to put the unpacked content.
>
> There is probably another clever solution, but the straightforward 
> solution seems to be to add a subdomain on gwtproject.org and unpack the 
> content there - I propose eclipse.gwtproject.org. As we did for 
> www.gwtproject.org and samples.gwtproject.org, I've put an example of 
> this at eclipse.gwtproject.org.vertispan.com, and deployed a single 
> snapshot of the 4.0 plugin (note that as with many eclipse plugin repos, 
> this doesn't load correctly in a browser):
> https://eclipse.gwtproject.org.vertispan.com/2023-01-18/
>
> If there are no objections, once we've finished the 4.0 plugin and are 
> ready for a release, I'll formally set up *eclipse.gwtproject.org 
> *. For the moment I anticipate only a 
> plugins/ directory, with each versioned release (and maybe a nightly build 
> setup too), to allow for additional content later.
>
> Using the gwtproject.org domain name seems natural as a large number of 
> GWT developers use Eclipse and this plugin, and the documentation at 
> gwtproject.org has long since offered Eclipse instructions, with little 
> space given to IntelliJ or Maven/Gradle. I'd further propose we should 
> improve that situation, but that's a separate discussion. Vertispan intends 
> to host this new plugin content, and we are already hosting the 
> gwtproject.org domain content.
>
> If there are reservations about gwtproject.org also hosting the eclipse 
> plugin, we can set up an alternate domain name for this work, though at 
> least for the time being, Vertspan will be hosting these together.
>

-- 
You received this message because you are subscribed to the Google Groups "GWT 
Contributors" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to google-web-toolkit-contributors+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit-contributors/47334766-5982-40de-8ee1-dcdd37286667n%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 

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.


[gwt-contrib] Re: GWT 2 Roadmap as it applies to future deprecations

2022-08-05 Thread Jens
I think first we should put a good Java version policy into place. 
Personally I would split this policy into two policies. One for client code 
(Compiler) and one for shared/server code.

For client code GWT has two main dependencies: Eclipse JDT and Jetty. So I 
would define the minimum required Java version of GWT Compiler / DevMode as 
the maximum of the requirements of latest Jetty and latest Eclipse JDT. 
That way GWT can always aim to support latest Java language features and 
can regularly upgrade Jetty for CodeServer / DevMode once the used Jetty 
version is EOL or something else requires upgrading Jetty. I think this 
should be fine for everyone because JDK on developer machines and within CI 
docker containers can be relatively new in case it needs to be relatively 
new. 
My gut feeling says with this policy we would usually end up with the 
previous LTS version of Java as a minimum requirement. Currently 11. 

For server side code we never know how it will be deployed. Some people aim 
to use newest Java on server, some don't. Jakarta EE 9 is the first release 
using the new jakarta namespace. As it requires Java 8 we could technically 
stay on 8 while supporting both namespaces for a long time. Jakarta EE 10 
will require Java 11. 


IMHO it is important to support latest java language features in 
client/shared code. If GWT client/shared code lags behind GWT feels even 
more dated just because of missing language feature support. Thus our Java 
version policy should help us to never be blocked by server side Java 
requirements. 


-- J.

-- 
You received this message because you are subscribed to the Google Groups "GWT 
Contributors" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to google-web-toolkit-contributors+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit-contributors/23ea079e-8be3-4245-a6c4-3f4c4c5553e0n%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 

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.


[gwt-contrib] Re: License for gwt-site content

2022-04-23 Thread Jens


> As Google is winding down their direct involvement in the project, the CLA 
> bot will be turned off soon, and we'll want to be sure we have an 
> explicitly license in all projects that covers contributions, but so far 
> this was the only project deficient in this way - and the only project not 
> covered by gerrit.
>

I am wondering if Google should also hand over CLAs to someone else, given 
that they need to be accessible for non-Googlers somehow if Google is 
winding down their involvement further. Ideally some CLA Github bot should 
be fed with them (and any future CLAs of future contributors).

-- J.

-- 
You received this message because you are subscribed to the Google Groups "GWT 
Contributors" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to google-web-toolkit-contributors+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit-contributors/cb92ce10-d030-4585-a6f2-cee90657a5fdn%40googlegroups.com.


[gwt-contrib] Re: License for gwt-site content

2022-04-22 Thread Jens
Haven't all changes been made through gerrit and did require a CLA? 

--J.

Colin Alworth schrieb am Donnerstag, 21. April 2022 um 17:34:49 UTC+2:

> See the question raised at 
> https://github.com/gwtproject/gwt-site/issues/328.
>
> While gwtproject explicitly licenses all "software and sample code" as 
> under the Apache License 2.0, it appears that we don't have a license 
> specified for the contents of the gwtproject website (
> https://gwtproject.org, https://github.com/gwtproject/gwt-site/). A case 
> could be made that the content is already licensed as under the same 
> license. It was my understanding that this is discouraged (though at the 
> moment I'm having a hard time seeing why that would be). I can find 
> concrete examples of the Apache Foundation licensing their documentation 
> under the Apache License
>  * https://github.com/apache/couchdb-documentation
>  * https://github.com/apache/cordova-docs
>
> On the other hand, if the Apache license that applies to all code and 
> samples does not apply to the contents, then each author owns their own 
> content directly.
>
> I am not a lawyer, but my understanding is that (at least in the country 
> in which I reside) content is copyrighted by default, and the author owns 
> that copyright. Additional rights must be granted by the author. If we want 
> to change the license, we need the approval of the authors so far - 
> https://github.com/gwtproject/gwt-site/graphs/contributors. Anyone who 
> doesn't approve would need to have their content removed, if we decide to 
> change.
>
> Are we sufficiently clear that all content is Apache licensed, including 
> the website documentation? Is there a good reason to consider a different 
> license instead? Should we seek confirmation from any authors of 
> substantial amounts of content that their content falls under the license 
> we choose?
>
> My suggestion is to clarify that all content is under the Apache License, 
> and see a confirmation from any author who wrote more than ~5 lines of 
> content. If we think we are already clear that all content is under that 
> license, then we should state that in an up front way, such as setting the 
> "license" metadata of the gwt-site repo, and adding a LICENSE file.
>
> Thoughts, suggestions, pointers to how other projects have handled this?
>

-- 
You received this message because you are subscribed to the Google Groups "GWT 
Contributors" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to google-web-toolkit-contributors+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit-contributors/36d93c6d-09d6-46c4-bfc6-86df8d8cc5abn%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: [gwt-contrib] Re: Goodbye IE 8–9 

2021-10-06 Thread Jens
I think the gecko permutation has very little to no special treatment of IE 
11 and there are some bugs reported because of that. So there isn't much to 
deprecated for IE 11. 

Personally I only use safari, gecko permutation and define safari as 
fallback permutation. In addition I use some code to check runtime vs 
compile time user agent and if they are different display a warning that 
some things might not work. That warning basically triggers for any exotic 
user-agent and any IE below 11.

Dropping all IE permutations (8-10) should be totally fine I guess. 
Especially because the new, smaller GWT modules only care about IE 11 (if 
at all). gwt-dom for example has only two checks for safari and everything 
else is treated the same.

-- J.

ManfredTremmel schrieb am Montag, 4. Oktober 2021 um 11:07:11 UTC+2:

> Am Donnerstag, 30. September 2021, 18:49:56 CEST schrieb Colin Alworth:
>
> > So, is there any objection at this time to dropping what remains of IE8,
> > IE9, and IE10 support from GWT? Then, we can reevaluate IE11 at some 
> later
> > date, for GWT itself? Various migrated GWT modules have focused their
> > efforts on well-supported browsers, and are likely to only support IE11 
> by
> > accident anyway.
>
> Let's drop the IE-Permutations. IE11 uses the gecko permutation, so no 
> need to 
> drop it. In my newer projects, I only use safari permutation for all 
> browsers, 
> so even dropping all browser specific permutations wouldn't affect me.
>
>
>

-- 
You received this message because you are subscribed to the Google Groups "GWT 
Contributors" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to google-web-toolkit-contributors+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit-contributors/331ecf5c-ef4c-4862-86c9-12a47f8b991bn%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 

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.


[gwt-contrib] Re: Asking for decision on DevMode embedded Jetty support

2021-04-11 Thread Jens
For reference:

Jetty ASM issues:
https://github.com/gwtproject/gwt/issues/9606
https://github.com/gwtproject/gwt/issues/9693
https://github.com/gwtproject/gwt/issues/9720

Jakarta servlet support question:
https://github.com/gwtproject/gwt/issues/9727

Other embedded Jetty related issues:
jrt: URLs not recognised with Java 9+: 
https://github.com/gwtproject/gwt/issues/9582
Class loader leak protection code causes (ignorable, yet annoying) error 
logs in Java 9+: https://github.com/gwtproject/gwt/issues/9561




-- 
You received this message because you are subscribed to the Google Groups "GWT 
Contributors" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to google-web-toolkit-contributors+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit-contributors/9fad99cf-9d54-4550-b740-210a6c9175d9n%40googlegroups.com.


[gwt-contrib] Asking for decision on DevMode embedded Jetty support

2021-04-11 Thread Jens
Hi,

we all know the issue: DevMode bundles Jetty and people are using it even 
though we do not recommend it. Consequently people are complaining that 
bundled Jetty is too old. So every once in a while we upgrade it.

Currently with GWT 2.9.0 the situation is:
- GWT SDK is compiled to Java 7 byte code
- GWT Compiler requires ASM 7.x to support Java 11
- DevMode bundles Jetty 9.2 which uses ASM 5.x
- gwt-dev.jar can only bundle a single Jetty, since we do not relocate it. 
However there is already a question asking for Jakarta Servlet support, 
e.g. Jetty 11 / Tomcat 10.

Currently the ASM version misalignment between Jetty 9.2 and GWT compiler 
causes classpath issues. This could be fixed by upgrading to Jetty 9.4 and 
consequently compiling GWT SDK to Java 8 byte code as that is a requirement 
for Jetty 9.4.

However given the new Jakarta namespace and first questions about 
supporting it, I am wondering if it wouldn't be wiser to remove embedded 
Jetty from DevMode now, invest some work to make GWT-RPC and RequestFactory 
useable with old javax.servlet and new jakarta.servlet namespaces and 
finally cut a 2.10 or 3.0 release given the removal of embedded Jetty.

Personally I would strongly vote for removal because GWT nowadays is in 
maintenance mode with only very few changes here and there to support J2CL 
better. Even reviews from contributors are rare these days I guess. Every 
action we take nowadays should take maintenance effort into account and a 
low maintenance effort is obviously preferred. If we upgrade Jetty to 9.4 
we still have that Jakarta issue coming up more often in the future for 
sure.

Generally this would be a decision made by GWT steering group but I have no 
idea if this group still exists. So I am asking here for a decision how to 
move on.

-- J.

-- 
You received this message because you are subscribed to the Google Groups "GWT 
Contributors" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to google-web-toolkit-contributors+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit-contributors/622544a8-85d5-41c5-b8da-7a733667eb89n%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.


[gwt-contrib] Re: Goodbye IE 8–9 

2021-03-11 Thread Jens
Dropping IE 8-10 shouldn't really hurt. Companies that require it are 
probably not upgrading GWT in a fast pace anyways.

However I wouldn't drop IE 11 anytime soon. IE 11 itself is tied to the 
lifecycle of Microsoft's operating systems, which means for Windows 10 it 
is supported until 2025 (for now). So just because MS and Google drop 
support for IE 11 in some/all of their products, the browser itself is 
still generally supported by MS. So we should think twice before removing 
IE 11 from a library such as GWT, even if it means to decline/revert 
certain commits if they break IE 11. From own experience I have usually 
seen something around 8% of IE 11 usage in GWT based apps.

However I am pretty sure more and more companies will announce dropping IE 
11 this year or next year. With MS and Google starting, this could easily 
have a domino effect. However GWT also also strongly used internally inside 
companies so it might not have that much of an effect in that area.

If we ditch IE 8-10 and only leaving gecko1_8 and safari, can't we kill 
them both as well and put them together? Are there so many differences in 
code between both? From my work migrating GWT code to elemental2/JsInterop 
I had the feeling that only some minor stuff is different between both. So 
there shouldn't be that much overhead in code size and performance doing 
(cached) runtime checks instead.

-- J.

-- 
You received this message because you are subscribed to the Google Groups "GWT 
Contributors" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to google-web-toolkit-contributors+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit-contributors/031f1171-cce9-4c17-b717-80bb5730f7fdn%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: [gwt-contrib] CI / Jenkins configuration issue

2020-06-17 Thread Jens
Any news here?

The Leeroy Jenkins spam is really annoying in code reviews.

-- J.

-- 
You received this message because you are subscribed to the Google Groups "GWT 
Contributors" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to google-web-toolkit-contributors+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit-contributors/4d9695b1-bf52-4792-a0c5-c4cb413487abo%40googlegroups.com.


Re: [gwt-contrib] Re: HashCode H$ property should be not enumerable

2020-06-15 Thread Jens


> Fwiw: IE11 will be EOL for mainstream in October this year: 
> https://www.swyx.io/writing/ie11-eol/ (of course, for enterprise 
> customers this will be longer; my opinion is that those companies that have 
> enough money to pay for special Microsoft support contract could also pay a 
> company to fork and maintain GWT for those usecases; or they can just stay 
> on an old version of GWT like they're staying on an old version of IE; 
> those companies are not my customers though so my opinion probably doesn't 
> weight much)
>
> Also, jQuery dropped support for IE8 while back and is now IE9+ 
> https://jquery.com/browser-support/ 
> .
>  
> That supports the option for GWT to do the same, at a minimum.
>
> Finally, several "modularized gwt-user" modules already dropped support 
> for IE8 and IE9 AFAICT, possibly even IE10.
>

Yeah there wasn't a clear guideline I think. At least when I started 
gwt-dom and gwt-widgets I killed IE8-10 and used IE 11 as baseline for 
both. And since Edge is now based on Chrome, technically every OS that 
supports IE 11 also supports Edge now, so I would be fine dropping IE 11 as 
well in a not so distant future.

-- J.

-- 
You received this message because you are subscribed to the Google Groups "GWT 
Contributors" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to google-web-toolkit-contributors+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit-contributors/0e56f35c-1c20-4ed9-a0b0-81ef586d3fe8o%40googlegroups.com.


[gwt-contrib] Re: Discussion on changing gwt release groupid

2020-06-11 Thread Jens

>
>
> I suspect this will not work except in gradle, which picks the highest 
> version in the case of a conflict. Maven picks the "nearest to your 
> project", so:
>
>- SomeLibrary depends on c.g.g:gwt-user:2.9.0 (or earlier, with or 
>without a BOM)
>- MyProject depends on SomeLibrary (so c.g.g:gwt-user is now 2 steps 
>away)
>- MyProject depends on o.g:gwt-user:2.10 without a BOM, which depends 
>on c.g.g:gwt-user:99.0 (which is also 2 steps away)
>
> Hmm, so MyProject would need to declare c.g.g:gwt-user:99.0 as a direct 
dependency as soon as it wants to use o.g:gwt-user:2.10 to make sure the 
"distance" is 1. A bit unfortunate but doable when clearly communicated in 
documentation. But maybe that relocation solution is more straight forward 
then for the end user.

-- 
You received this message because you are subscribed to the Google Groups "GWT 
Contributors" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to google-web-toolkit-contributors+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit-contributors/380f610a-96e9-44e8-9171-412c0893b2bbo%40googlegroups.com.


[gwt-contrib] Re: Discussion on changing gwt release groupid

2020-06-10 Thread Jens
I know you can force Gradle to swap out dependencies on the fly, e.g. 
replace com.google.gwt with org.gwtproject releases. If that would also be 
possible with Maven/Ivy/Bazel then it is just a matter of documentation.

If that is not possible, or not desired, then Google could probably publish 
a single, empty com.google.gwt:..:99.0 release without any dependencies in 
its pom. Our new published org.gwtproject:...:2.10 release would depend on 
com.google.gwt:...:99.0 which means all old GWT libraries should be 
upgraded via Maven/etc to 99.0 automatically as soon as you add 
org.gwtproject:...:2.10 to your dependencies. Since the 99.0 release is 
empty and the classes are provided by our new release, there should not be 
any class path conflicts. New GWT libraries would directly depend on our 
new release which means as soon as you try to migrate your code to one of 
the new GWT libs, our new org.gwtproject release will be pulled in and 
provide the code for everything.


-- 
You received this message because you are subscribed to the Google Groups "GWT 
Contributors" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to google-web-toolkit-contributors+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit-contributors/10ac1356-1146-4ff1-9732-f4983a7d9367o%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: [gwt-contrib] First org.gwtproject.* modules published to Central

2020-05-25 Thread Jens
My understanding is that:

>
>- these projects/classes are builtin in GWT 2.9
>
> Their old, non J2CL compatible versions are buildin in GWT 2.9. No changes 
are made here.
 

 

> Is it possible to start preparing now with GWT 2.9 before GWT 3? Maybe if 
> we drop gwt-user from the dependencies and include these mini gwt-project* 
> ? Or it is not supposed to work like that?
>

gwt-user code is still in package com.google.gwt while the package for the 
various small gwt-* projects is org.gwtproject. So you would add the small 
projects to your class path and then update your imports in your project to 
point to the new classes / projects. 

You would continue to do that with all the other upcoming gwt-* projects 
until your projects does not use any com.google.gwt imports anymore. Then 
you can drop gwt-user.jar. 

The projects above should be relatively easy to integrate into your app. 
Maybe gwt-events needs a little more work since you generally want your own 
custom events to move away from GwtEvent / EventHandler as both are not 
required.


-- J.

-- 
You received this message because you are subscribed to the Google Groups "GWT 
Contributors" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to google-web-toolkit-contributors+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit-contributors/b95a95fa-460d-482c-9374-b7b405309024%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: [gwt-contrib] GWT Java7 support

2019-10-23 Thread Jens


> Could someone send a patch?
>

I guess the steering group first needs to make the decision to finally drop 
java 7. Maybe ping here 
again: 
https://groups.google.com/forum/#!topic/google-web-toolkit-contributors/tMR3Dv1YBBE
 

-- J.

-- 
You received this message because you are subscribed to the Google Groups "GWT 
Contributors" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to google-web-toolkit-contributors+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit-contributors/1fa70489-132e-4554-99d7-ae46bb887fd2%40googlegroups.com.


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

2019-10-22 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-22 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.


  1   2   3   4   5   6   7   8   9   10   >