I've seen the request to host static webcontent (i.e. html/css/js) on a 
separate server many times before. Especially with dedicated infrastructure 
teams.
The trick is to have mvn build a separate jar with only the static content 
and unzip that on the target webserver.
It's been a while since I last did this though.

Still I'm quite interested why we've never run in similar compilation 
issues despite having quite a larger set of frontend code as stated in this 
thread. Can someone explain? I expect it might have something to do with 
the fact we only use a single RPC call? 
The RPC is used as transport only for a command pattern implementation of 
the communication between front and backend. The Rpc basically implements a 
CommandSink in the UI code and a CommandSource on the server. 
Hence we always only needed a single rpc.

Op dinsdag 1 oktober 2024 om 06:48:50 UTC+2 schreef Frank Hossfeld:

> Besides that the plugin does not provide this functionality - as Greg 
> already mentioned - you will run into security issues, while hosting the 
> client on one server and the server part on another (CORS). (OK, you might 
> find a workaround with some fanzy server configuration, but it's risky) If 
> you really want to do this, you can use the artifact as designed and use 
> the server module of your client service as proxy that calls the other 
> server. In this case you can use the artifact as designed and there is no 
> need for disabling CORS and so.
>
> Craig Mitchell schrieb am Dienstag, 1. Oktober 2024 um 02:51:40 UTC+2:
>
>> Running multiple servers with different functionality, is outside the 
>> scope of the Spring Boot + GWT archetype.
>>
>> Spring Boot + GWT archetype gives you one server codeline, Ie: One WAR or 
>> JAR.  You can can replicate and load balance it nicely (I do this with this 
>> architecture in the Google Cloud).  I suspect this is actually what you 
>> want.
>>
>> However, If you really want to run multiple servers that have different 
>> functionality (Ie: Create multiple different WARs or JARs), you'll need to 
>> create your own services.  How you do this is up to you, but the Spring 
>> Boot + GWT archetype will be able to call these services no problem.
>>
>> On Monday 30 September 2024 at 11:09:30 pm UTC+10 [email protected] 
>> wrote:
>>
>>> Hi FRANK,
>>>
>>> We have gone through the link provided by you "Spring Boot + GWT 
>>> archetype: https://github.com/NaluKit/gwt-maven-springboot-archetype";
>>>
>>> We want to host client on different server-machine and server will be 
>>> hosted on another server-machine. We cannot find how will we achive the 
>>> same with the architecture provided above. 
>>>
>>>
>>>
>>> On Friday, September 27, 2024 at 1:55:26 PM UTC+5:30 Frank Hossfeld 
>>> wrote:
>>>
>>>> Regarding point 7:
>>>> In addition to what Jens said, here you'll find an artifact creator for 
>>>> a Spring Boot + GWT archetype: 
>>>> https://github.com/NaluKit/gwt-maven-springboot-archetype
>>>>
>>>> Also, I would like to add:
>>>> to prepare the project, running 'mvn clean compile'  is all you need to 
>>>> do to prepare the project for testing.
>>>> After the 'mvn clean compile' command is executed, start the codeserver 
>>>> and wait until you see the URL of the codeserver in the terminal window! 
>>>> After the URL is printed, the Spring Boot application can be started. This 
>>>> is necessary, because the codeserver has to create the launcherDir before 
>>>> Spring Boot is startet. Otherwise Spring Boot will not publish the content 
>>>> of the launcherDir and the project will not work.
>>>>
>>>> Jens schrieb am Donnerstag, 26. September 2024 um 18:49:22 UTC+2:
>>>>
>>>>> Now! our WAR is compiling (single permutation) in 10.25 mins only. We 
>>>>> are testing our application workflow as many of the differedJS files are 
>>>>> greater than 1 mb. We'll try to reduce the size. 
>>>>>
>>>>>
>>>>> Sounds way better and you can likely decrease the required Java heap 
>>>>> now as well. You had A LOT of split points. Personally I use split points 
>>>>> more like one per menu item of the first or second level menu, depending 
>>>>> on 
>>>>> the size of the application. Grouping menu items behind a single split 
>>>>> point can also make sense, e.g. user vs. admin menu items or based on 
>>>>> other 
>>>>> usage patterns. Occasionally I use split points for a feature like 
>>>>> rendering charts that could be split away until needed. 
>>>>>
>>>>>
>>>>>
>>>>> Whereas GWT 2.6.1 upgradation is concerned, we would like to say, yes! 
>>>>> we are actively developing the application and are intrested in upgrading 
>>>>> GWT 2.6.1. But there are some issues which are required to be addressed. 
>>>>> Many time earlier we have planned the upgradation, but dropped the idea 
>>>>> due 
>>>>> to not having the clear answers on bellow mentioned points. 
>>>>>
>>>>> *1.* Which version of GWT we should move to? As many of the latest 
>>>>> technologies are rolling arround and GWT in itself also have released 
>>>>> many 
>>>>> versions after 2.6.1. Meanwhile J2CL had also been launched. Migrating a 
>>>>> huge application rapidly is not possible, so we want to be very sure.   
>>>>>
>>>>>
>>>>> The newest GWT 2.11 version will be fine. It still supports running on 
>>>>> Java 8 but future versions will likely not.
>>>>>
>>>>>  
>>>>>
>>>>> *2.* We are using "Apache Netbeans IDE" from a long time and now the 
>>>>> team is also very much famlier with it. Upgraded GWT4NB plugin was 
>>>>> missing 
>>>>> from market place. Can we go for upgradation without changing IDE?
>>>>>
>>>>>
>>>>> I don't know about Netbeans and GWT4NB. However GWT SDK itself hasn't 
>>>>> changed in structure so I don't see why GWT4NB shouldn't work anymore 
>>>>> with 
>>>>> newer GWT versions. Of course you can use GWT without any IDE plugin and 
>>>>> launch GWT SuperDevMode and GWT Compile via ANT for example. Of course 
>>>>> you 
>>>>> would loose all benefits the IDE plugin gave you.
>>>>>  
>>>>>
>>>>> *3.* We are using "JDK 1.8". Do we required to upgrade JDK too?
>>>>>
>>>>>
>>>>> No, as of now. But future versions will require newer JDK. If you 
>>>>> upgrade your libraries then you can probably pretty easily upgrade JDK as 
>>>>> well. You might need to add some libraries as some classes have been 
>>>>> removed from JDK 11, see: 
>>>>> https://www.oracle.com/java/technologies/javase/11-relnote-issues.html#JDK-8190378
>>>>>  
>>>>>
>>>>> *4.* We are using "PAYARA-WEB-SERVER" in both development + 
>>>>> Production environment. GWT upgraded versions are comming with inbuild 
>>>>> JETTY servers. Can we use "PAYARA-WEB-SERVER" in development after 
>>>>> upgradtion or we have to stick wit JETTY only?
>>>>>
>>>>>
>>>>> GWT ships with Jetty for convenience to get a demo app up and running 
>>>>> quickly. But these days we recommend using your own servlet container and 
>>>>> it can be any servlet container you like. If you do not use any servlet 
>>>>> specific features of GWT like GWT-RPC or RequestFactory then you can use 
>>>>> whatever server you like. PAYARA should continue to work fine.
>>>>>
>>>>>  
>>>>>
>>>>> *5.* We are using "ANT build" not "Maven build" means we are not 
>>>>> having any type of POM files.  
>>>>>
>>>>>
>>>>> Then you likely have a project or a folder with all your dependencies. 
>>>>> You can download GWT from gwtproject.org, unzip it and use these jars 
>>>>> in your ANT file. Alternatively there are ANT tasks provided by Maven 
>>>>> which 
>>>>> allows ANT to download dependencies based on POM files. See: 
>>>>> https://maven.apache.org/resolver-ant-tasks/
>>>>>
>>>>>  
>>>>>
>>>>> *6.* We are using sencha (gxt 3.1.1) mainly for GRID functionality. 
>>>>> Upgrading GWT will fall dependency is on SENCHA-GXT and upgraded 
>>>>> SENCHA-GXT 
>>>>> is paid. What are its alternative?
>>>>>
>>>>>
>>>>> That is probably the main issue to solve. There are some UI widget 
>>>>> libraries for GWT like https://dominokit.com/solutions/domino-ui/v2 
>>>>> but if you switch the library you would need to rewrite your code of 
>>>>> course. 
>>>>>
>>>>> Maybe you can make GXT work by patching it yourself if allowed.
>>>>>
>>>>>  
>>>>>
>>>>> *7.* Our application is having GWT standard architecure eg: (client + 
>>>>> shared + server) in the same application. We want to split our 
>>>>> application 
>>>>> as client & server seperate. Where we want to move server part in 
>>>>> SPRING-BOOT without any major changes. Is it possible?    
>>>>>
>>>>>
>>>>> Sure. First split your application without using spring boot and make 
>>>>> it run again. Then apply spring boot to your server project. GWT 2.11 
>>>>> also 
>>>>> has a JakartaEE variant now so Spring Boot 3+ should work as well (but 
>>>>> requires Java 17). The benefit of splitting your project into three is 
>>>>> that 
>>>>> you can also use different JDK versions for client and server projects. 
>>>>> Sometimes that is useful if your server has JDK requirements that are 
>>>>> either newer or older than what you want to use for the client.
>>>>>
>>>>>
>>>>>

-- 
You received this message because you are subscribed to the Google Groups "GWT 
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/google-web-toolkit/89a9b0ad-be73-4751-ada2-05922eec600cn%40googlegroups.com.

Reply via email to