Re: RPC vs. RequestFactory vs. RestyGWT
First, thanks for all your replies! If I understand Thomas right, it is possible to use RF as a single endpoint for GWT-Clients and Rest-Clients. Well that's great to know. Are there any plans to increase the documentation coverage in RF? Also my questions wasn't exclusively meant to be technical. A GWT beginner does the following learning steps (of course not complete): 1. learn RPC 2. application and objects grow and you look for alternatives: RequestFactory to the rescue! 3. highly motivated you start learning 4. two weeks later you might ask yourself if this was a good idea, of course you made it work, but you had to struggle a lot. And your gut feeling stays: Is this really the best solution? That was partly my personal experience. Then I found RestyGWT and after 4 hours all worked as expected and I had removed hundreds lines of code - great feeling for me! If RestyGWT is not an option to replace RF, then RF has to provide dead simple and understandable official tutorials, sample projects and good documentation! If no one knows what RF can do for you, then it's like being non existent. And in the context of the myth that GWT is dead, GWT should as easy and fun to learn as it was years ago. That should be one of the main goals for the steering committee. If you look at the official site and see articles from 2009, that's not what you would expect from a modern framework! Help the GWT community to grow by bringing the learning and programming fun back. What are your thoughts? Am Donnerstag, 16. Oktober 2014 17:22:08 UTC+2 schrieb Thomas Broyer: On Thursday, October 16, 2014 3:22:47 PM UTC+2, Ümit Seren wrote: I have been using RequestFactory extensively for a project and I must say that although it is pretty well engineered, the learning curve is quite high. +1 If you have a CRUD heacy application where you send and receive lots of data, it might be a good solution (because it only sends deltas). Well, RF is good at RPC too (using ValueProxy). I think Google is using it mostly that way, with the JSON-RPC dialect (I don't think they use the native dialect, that allows batching, etc.). However there are also some pain points: For example on the server side it uses Reflection to initialize the server instances which is slower than if the code would be generated. I was thinking about generating code for the server (or JVM clients), but the current use of ServiceLayers is likely to greatly limit the gains in performance… Still, walking the object hierarchies might benefit from such codegen. Also currently there is no real further development ongoing (apart from some bugfixes). …but I never found the time and energy to actually work on the codegen. Another downside is that there is really strong coupling between backend and frontend with RF. Though less strong that with GWT-RPC, because the client and server have to use compatible versions of the proxies (compatible in a way similar to how ProtoBufs are compatible with one another), not necessarily the exact same class as in GWT-RPC (well, there are solutions I believe for GWT-RPC, by having several serialization policies at once on the server). In many cases you might need a public API to access the data from non GWT clients, so you might end up implementing two endpoints (RF and REST). Well, RF has a well-defined (though not well-documented) protocol, and it's capable of using JSON-RPC (though only on client-side), so you *could* use a single endpoint. But I otherwise agree with your point. -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To unsubscribe from this group and stop receiving emails from it, send an email to google-web-toolkit+unsubscr...@googlegroups.com. To post to this group, send email to google-web-toolkit@googlegroups.com. Visit this group at http://groups.google.com/group/google-web-toolkit. For more options, visit https://groups.google.com/d/optout.
RPC vs. RequestFactory vs. RestyGWT
I've used RPC, RequestFactory and now RestyGWT in some GWT projects. In my opinion RequestFactory development should be canceled and replaced by RestyGWT (or something like that). My key arguments for that drastic opinion: RPC + easy to learn - proprietary - problems when trying to send hierarchical entities over the wire - mostly leads to DTOs, which leads to boilerplate code for mapping DTOs and entities, which leads to hardly maintainable code if you have to deal with hierarchical objects (e.g. entity A contains entity B which contains list of entity C) RequestFactory - proprietary - high learning curve - bad documentation (almost every is very old) - development is slow (compared to other techniques) - boilerplate code + standard GWT communication + integration with Editor framework + transfer of data delta between client and server RestyGWT - no official part of the GWT framework and the potential risk of development cancelation + really, really easy + Java standard + great documentation (client side on RestyGWT site, server side on RestyGWT and every other REST documentation) + out-of-the-box accessible by any other device that can handle rest services + nearly no boilerplate code What's your opinion about that? Is RequestFactory the right way or not? What are your experiences? I'm looking forward to your answers, Ralf -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To unsubscribe from this group and stop receiving emails from it, send an email to google-web-toolkit+unsubscr...@googlegroups.com. To post to this group, send email to google-web-toolkit@googlegroups.com. Visit this group at http://groups.google.com/group/google-web-toolkit. For more options, visit https://groups.google.com/d/optout.
Re: List/tabel to show complex data
Thanks Thomas and Joseph, the UiBinder for Cells looks quite interesting. I will try it. I found the following article about it: https://developers.google.com/web-toolkit/doc/latest/DevGuideUiBinder#Rendering_HTML_for_Cells Is there any more info about this topic somewhere? @Joseph: At the moment I am not sure how much data I will have to present. Did I get it right: do you propose to write it directly into the UiBinder XML and show the data through iteration? -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To view this discussion on the web visit https://groups.google.com/d/msg/google-web-toolkit/-/_9pHl0MzCFoJ. To post to this group, send email to google-web-toolkit@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
List/tabel to show complex data
I want to show a list of complex data in a table or a list. This is a mockup example for one entry in the list or one row in the table: https://lh6.googleusercontent.com/-xvphtU0iziw/UAVBZ1hdV5I/AG4/-JpYSeqx8b0/s1600/mockup_result.png Which is the best way to do that with GWT? I played around with the cell table a little bit. Is there a way to show panels in a cell of the table? -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To view this discussion on the web visit https://groups.google.com/d/msg/google-web-toolkit/-/FP3PYmCUxVEJ. To post to this group, send email to google-web-toolkit@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
Need inside knowledge for Activites and Places - How do listeners for PlaceControllers get initialized?
Hi *, I've just done some refactoring in my project and am now finding that my PlaceHistoryHandler is no longer able to trigger a default Place. I'm following the default procedure as described in the GWT online documentation as you can see in the source code at the end of the mail. After some debugging, I have detected that the listeners for the PlaceController are not in place early enough. When doing any navigation activites in the menu later, everything works fine and the ActivityManager and PlaceHistoryHandler are both showing up in the listener queue. The MVPManagement is activated in an event listener that is triggered after the app has retrieved the user profile after an RMI call. Any help or advice is greatly appreciated :) Ralf --- package com.str84wd.nifty.client.mvp; import com.google.gwt.activity.shared.ActivityManager; import com.google.gwt.activity.shared.ActivityMapper; import com.google.gwt.core.client.GWT; import com.google.gwt.event.shared.EventBus; import com.google.gwt.place.shared.Place; import com.google.gwt.place.shared.PlaceHistoryHandler; import com.google.gwt.user.client.ui.AcceptsOneWidget; import com.str84wd.nifty.client.ClientFactory; public class MVPManager { private ActivityMapper activityMapper; private ActivityManager activityManager; private ClientFactory clientFactory; private AppPlaceHistoryMapper historyMapper; private PlaceHistoryHandler historyHandler; public MVPManager(ClientFactory pClientFactory) { super(); clientFactory=pClientFactory; } public void activateMvpManagement(AcceptsOneWidget pDisplayContainer, Place pDefaultPlace) { setupActivityManager(pDisplayContainer); startPlaceHistoryManagement(pDefaultPlace); } private void setupActivityManager(AcceptsOneWidget pDisplayContainer) { System.out.println(MVP Setup - initializing ActivityManager); // Start ActivityManager for the main widget with our ActivityMapper activityMapper = new AppActivityMapper(clientFactory); EventBus eventBus = clientFactory.getEventBus(); activityManager = new ActivityManager(activityMapper, eventBus); activityManager.setDisplay(pDisplayContainer); } private void startPlaceHistoryManagement(Place pDefaultPlace) { System.out.println(MVP Setup - set place history management with default place + pDefaultPlace); // Start PlaceHistoryHandler with our PlaceHistoryMapper historyMapper= GWT.create(AppPlaceHistoryMapper.class); historyHandler = new PlaceHistoryHandler(historyMapper); historyHandler.register(clientFactory.getPlaceController(), clientFactory.getEventBus(), pDefaultPlace); historyHandler.handleCurrentHistory(); } } -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-toolkit@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
Making GWT 2.2 work in eclipse 3.4
I have seen a few posts (http://groups.google.com/group/google-web- toolkit/browse_thread/thread/eaf042880c63e3c5/07410f4d531860e6? lnk=gstq=eclipse+3.4# and https://groups.google.com/group/google-web-toolkit/browse_thread/thread/e630f2550ac20050) that have had problems with updating to GWT 2.2 in eclipse 3.4 and I ran into the same problem.I have been running 2.1 and 2.1.1 with no problem but when I tried to update to 2.2 i received the following error: Cannot complete the request. See the details. Google Plugin for Eclipse 3.4 is already installed, so an update will be performed instead. Unsatisfied dependency: [com.google.gdt.eclipse.suite.e34.feature.feature.group 2.2.0.v201102111801] requiredCapability: org.eclipse.equinox.p2.iu/ org.eclipse.wb.core.xml.feature.feature.group/0.9.0 Unsatisfied dependency: [com.google.gwt.eclipse.sdkbundle.e34.feature. 2.2.0.feature.group 2.2.0.v201102111801] requiredCapability: org.eclipse.equinox.p2.iu/ com.google.gdt.eclipse.suite.e34.feature.feature.group/2.2.0 Unsatisfied dependency: [com.google.gwt.eclipse.sdkbundle.e34.feature. 2.1.0.feature.group 2.1.0.v201010280047] requiredCapability: org.eclipse.equinox.p2.iu/ com.google.gdt.eclipse.suite.e34.feature.feature.group/1.4.0 Unsatisfied dependency: [com.google.gwt.eclipse.sdkbundle.e34.feature. 2.1.1.feature.group 2.1.1.v201012170126] requiredCapability: org.eclipse.equinox.p2.iu/ com.google.gdt.eclipse.suite.e34.feature.feature.group/1.4.1 Unsatisfied dependency: [com.google.gdt.eclipse.suite.e34.feature.feature.group 2.2.0.v201102111801] requiredCapability: org.eclipse.equinox.p2.iu/ org.eclipse.wb.core.xml.feature.feature.group/0.9.0 To solve this problem I downloaded the plugin and SDK (http:// code.google.com/eclipse/docs/install-from-zip.html) and commented out the row required namespace='org.eclipse.equinox.p2.iu' name='org.eclipse.wb.core.xml.feature.feature.group' range='0.9.0'/ in the content.xml file in the content.jar of the downloaded file. This made it possible to install GWT 2.2 in eclipse 3.4 from my local hard drive. I wonder if this is a viable solution or pure luck on my part? Regards Ralf -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-toolkit@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
Client side architecture when opening panels from panels
Hi All, I am about to build a desktop like client in GWT with one html page and one panel with several widgets like a menu, a navigation tree and so on. These widgets will then open different panels containing widgets. Is this a doable pattern or way to do it? When opening new panels in the onClick method I find my self doing setVisible(false); followed by passing the RootLayoutPanel around in order to add the new panel and make it visable. This doesn't feel right but its the only way I have found to return to the first panel after closing the second.Any thoughts about this? Thanks -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-toolkit@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
GWT in RAD with websphere
Hi, When setting up a EJB application in RAD v7 one can create an WAR and EAR project that are related. Adding the EAR to Websphere 7 in RAD using wizard you get automatic deployment to the server of anything you do in the WAR project. This makes it very quick to develop small applications. Can a GWT project somehow be incorporated into this structure? Right now I have a separate GWT project, a WAR project and an EAR project. I run an ant build every time I want to deploy to the server. The ant script copies files from the GWT project to the WAR project that then automatically gets deployed to my local Websphere server. How can I set up the GWT project to do this copying with out the ant script? Thanks -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
One Service, multiple users
I have a service that instantiates and keeps state (variables in the back end that is controlled by the service) until the user logs out. What happens exactly when two users access my GWT service; will there be one service instance for each user or will one be shared between them? I try to figure out if my service is actually multi-user or not... Ralf -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
Re: Few Openings in UI
Details? On Mon, Mar 29, 2010 at 5:56 AM, sridevi macherla sridevimache...@gmail.com wrote: Hi, Few openings in User Interface on Java/J2EE in my organization, anyone willing to relocate to bangalore and are interested. Can send me their resumes at the earliest. Profile: Exp 4+ UI: Java/J2EE/Servlets/JSP ( Core Java should be strong). Location : Bangalore. Thanks Sri -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en. -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
Re: Few Openings in UI
Amazing. I think I will take it, I don't need to know about anything about your project -- if you have one -- logistics, pay, company/team information etc. I guess for you its enough to tell that you have a job and an internet connection. Good luck! :D Ralf On Mon, Mar 29, 2010 at 1:25 PM, sridevi macherla sridevimache...@gmail.com wrote: Hi Manish, This openiings for Java 4- 8 years of experience and GWT would be much more advantage. for Netapp bangalore. bye On Mon, Mar 29, 2010 at 10:54 AM, Manish Kumar man...@oakdeneindia.com wrote: Hi Sri Could I please know a bit more detailed information on the requirement and about the company? Regards Manish From: google-web-toolkit@googlegroups.com [mailto:google-web-tool...@googlegroups.com] On Behalf Of sridevi macherla Sent: Monday, March 29, 2010 10:26 AM To: undisclosed-recipients: Subject: Few Openings in UI Hi, Few openings in User Interface on Java/J2EE in my organization, anyone willing to relocate to bangalore and are interested. Can send me their resumes at the earliest. Profile: Exp 4+ UI: Java/J2EE/Servlets/JSP ( Core Java should be strong). Location : Bangalore. Thanks Sri -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en. -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en. -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en. -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
Re: Example: (simple) Label with image?
That doesn't help. I know how to do it in Swing and AWT. Ralf On Tue, Mar 23, 2010 at 2:36 AM, mram mram...@gmail.com wrote: I haven't seen something like that. I know that with AWT, you can use an icon and put it into a label, but this is not the case because you can't use AWT with GWT. But still I tell you how you should do it in AWT: JLabel label = new JLabel(); ImageIcon icon = new ImageIcon(images/my_image.jpg); ImageIcon iconoEscala = new ImageIcon(icon.getImage().getScaledInstance(400, 400, java.awt.Image.SCALE_DEFAULT)); label.setIcon(iconoEscala); On 22 mar, 20:01, Ralf B ralf.bie...@gmail.com wrote: Is there a very very simple way to create a label with an image without using CSS, or is the only way to use HTML objects? I was hoping for a constructor like this: Image myImage = new Image(url); Label myLabel = new Label(myimage, This is the text); Best Regards :) -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en. -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
Example: (simple) Label with image?
Is there a very very simple way to create a label with an image without using CSS, or is the only way to use HTML objects? I was hoping for a constructor like this: Image myImage = new Image(url); Label myLabel = new Label(myimage, This is the text); Best Regards :) -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
Multiple Services at a time
Hi GWT fans, Is it possible to have multiple RPC-based GWT Services at a time and what are the usual pitfalls when doing that? Does anybody here know a good tutorial about setting up multiple services, configuring them? What are the special things one should consider when setting up cascading services (services calling other services)? Examples? I hope my question is not too general to be answered. Thanks a lot, Ralf -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
Re: Does Image not serialize? How to transfer image back to client?
Thank you for your help. I realized that I approached the problem too complicated and one actually never needs to transfer pictures themselves but should actually use HTTP to do that work. Please see my other thread about images and links. Generating an image and leaving it on the server and just sending a valid link to that newly generated image shouild do. However, I did not manage to place this generated image into the /images folder of the war folder and I don't know how to generate the full URL (only the /images/myimage.png part). Does GWT allow these folders to be accessed on the server, by server code? Are there any general tutorials out there that cover this technique? Thanks, Ralf -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
Does Image not serialize? How to transfer image back to client?
Hello everybody, I am new to GWT and want to have a service that transfers an Image object (com.google.gwt.user.client.ui.Image) back to the client. (Using GWT 2.0.0 with Eclipse Galileo and Eclipse GWT plugin). On the client, I have the following service method: import com.google.gwt.user.client.ui.Image; Image getImage(); and the following service async method: import com.google.gwt.user.client.ui.Image; void getImage(AsyncCallbackImage callback); On the server, I have the following service implementation: import com.google.gwt.user.client.ui.Image; @Override public Image getEventTimeline() { // 1) code to generate image from data // 2) create new image and return to client Image image = new Image(test.png); return image; } When I compile the code, I get the following error: [ERROR] com.google.gwt.user.client.ui.Image is not assignable to 'com.google.gwt.user.client.rpc.IsSerializable' or 'java.io.Serializable' nor does it have a custom field serializer (reached via com.google.gwt.user.client.ui.Image) [ERROR] com.google.gwt.user.client.ui.Image has no available instantiable subtypes. (reached via com.google.gwt.user.client.ui.Image) [ERROR]subtype com.google.gwt.user.client.ui.Image is not assignable to 'com.google.gwt.user.client.rpc.IsSerializable' or 'java.io.Serializable' nor does it have a custom field serializer (reached via com.google.gwt.user.client.ui.Image) This suggests that an Image cannot be serialized. I have two questions about this: 1) Isn't every Google object serializable by default. Otherwise, what is the point of having a separate image class in GWT? 2) What is the proper way of doing this? I want to create the image server-sided every time a user clicks a button and return it back to the user where it is supposed to be displayed in a panel. Any suggestions? Thanks a lot, Ralf -- You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.