Re: FTP download link for GWT
Sorry for confusion. Actually I did not mean HTTP is completely blocked. Any downloads like .zip, .exe, .msi, .jar etc. etc. and some sites hosting freeware softwares have been blocked in our organization. Even I cannot access FTP link using any browser. However I can use FTP clients like WinSCP from which I can access any FTP link and download any files. So was I looking for an FTP link. Thanks for below link. I will check that out. However if the download page has again a link to .zip or .jar file, I will not be able to download anyway. Regards, Mayuresh. On Sep 10, 2:43 pm, Ikai L (Google) ika...@google.com wrote: Is HTTP completely blocked? For instance, can you use Maven? If you can, try this: http://googlewebtoolkit.blogspot.com/2010/08/how-to-use-google-plugin... (Seems strange HTTP would be blocked, as you are emailing over Gmail right now) On Fri, Sep 10, 2010 at 12:47 AM, Mayuresh mayuresh.v...@gmail.com wrote: Hello, Our organization has blocked downloads over http(s). However the same works with FTP client. Since I am not able to open GWT download page, is there any FTP download link for GWT where I can get the latest version? Thanks and regards, Mayuresh. -- 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.comgoogle-web-toolkit%2bunsubscr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en. -- Ikai Lan Developer Programs Engineer, Google App Engine Blog:http://googleappengine.blogspot.com Twitter:http://twitter.com/app_engine Reddit:http://www.reddit.com/r/appengine- Hide quoted text - - Show quoted text - -- 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.
GWT Compile for a large code base
Hello, we are currently evaluating GWT as a replacement view layer for a large product. This product (now Swing) consist of independend contributions which are currently compiled per module. As I understand, to build a GWT project, every module has to be built in one go (or to be more specific, a module is always build with all its dependencies). This would lead to an in our case very lengthy production build. Is there any way that allows me to only build a changed module or is the complete build a must? What are the best practices for building large projects? Best regards, Kai -- 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.
Date Range
I am looking for a way to be able to select multiple dates and highlight them in the calendar/date picker. What would be the best way to achieve this ? -- 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: Date Range
Could you use two date pickers for start and end? After the start is selected, set the date of the end to the next day or something On Sep 13, 2010 6:40 AM, shahid shahidza...@gmail.com wrote: I am looking for a way to be able to select multiple dates and highlight them in the calendar/date picker. What would be the best way to achieve this ? -- 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.comgoogle-web-toolkit%2bunsubscr...@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: How to get HTTP Response headers?
On Sep 13, 3:10 am, ussuri michael.glas...@gmail.com wrote: I am getting an exception inside GWT: code: @Override public void onResponseReceived( Request request, Response response) { String toPop = ; Header[] headers = response.getHeaders(); Exception: java.lang.NullPointerException: null at com.google.gwt.http.client.Request.getHeaders(Request.java:88) at com.google.gwt.http.client.Request.access$0(Request.java:86) at com.google.gwt.http.client.Request$1.getHeaders(Request.java: 53) at com.***$2.onResponseReceived(***.java:153) GWT version is 2.0.4 What is interesting, is that although I am calling response.getHeaders(), the stack trace shows that Request.getHeaders() is called. The stack-trace, shows that the Response object you've been passed is an anonymous inner-class of Request (Request$1), whose getHeaders method delegate to a method on the Request class (have a look at the code the details) The exception is there in the compiled code as well. What can be the cause? A broken GWT installation? Have you checked the status code? It appears (from the line number given in the stack trace) that the XMLHttpRequest's getAllResponseHeaders returned 'null', so I suspect some kind of error (that wouldn't be flagged as an error by GWT, so there may be a bug here; but maybe there's some kind of bug in your code too) Can't you inspect the request in some devtool such as Firebug? -- 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: Date Range
hi Thomas, No I can't use that unfortunately. The design requirement is that the user should be able to select and highlight multiple dates on the calendar/date picker UI. On Sep 13, 12:47 pm, Brett Thomas brettptho...@gmail.com wrote: Could you use two date pickers for start and end? After the start is selected, set the date of the end to the next day or something On Sep 13, 2010 6:40 AM, shahid shahidza...@gmail.com wrote: I am looking for a way to be able to select multiple dates and highlight them in the calendar/date picker. What would be the best way to achieve this ? -- 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.comgoogle-web-toolkit%2bunsubscr...@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.
How could we know if GWT project will continue to be maintained by Google?
Hello, While comparing GWT with other solutions for a long-term project, we wondered how could we know if GWT project will continue to be maintained by Google, since it's available for free and Google makes no (direct) profit from it. We tried to look at what projects Google has that rely on GWT and are also profitable, such as AdWords. Are there any others? Is any part of Google Apps using GWT? (Wave will be closed, so it doesn't count). PS: I know GWT is open source. Maintaining it by ourselves in case Google decides to drop support for it it's not an option for us. Thanks Marius -- 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: PagingScrollTable Auto Resize
That did the trick, many thanks! Maurice On Sep 10, 9:27 pm, daniel d.brelov...@googlemail.com wrote: query the container widget's size in a deferred command (http:// code.google.com/p/google-web-toolkit/source/browse/trunk/user/src/com/ google/gwt/user/client/DeferredCommand.java?r=1061) so the browser has time to calculate the containers size before you ask for it On 10 Sep., 18:06, Maurice maurice.ocon...@gmail.com wrote: Hi, I understand that a PagingScrollTable must have its size specified in pixels. So far I have successfully created a PagingScrollTable and setup a handler to listen for browser resize events like so: Window.addResizeHandler(new ResizeHandler() {...}) When I resize the browser my PagingScrollTable is resized correctly. However, when it initially loads, it does not fill the widget containing it. When I query the container widget's size from its presenter I get 0. Has anyone got a solution for this? Thanks! Maurice -- 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: GWT Compile for a large code base
As long as I know, it isn't possible to build the modules separately. Regards, On Sep 13, 6:39 am, KaiWeing kaiwe...@gmx.net wrote: Hello, we are currently evaluating GWT as a replacement view layer for a large product. This product (now Swing) consist of independend contributions which are currently compiled per module. As I understand, to build a GWT project, every module has to be built in one go (or to be more specific, a module is always build with all its dependencies). This would lead to an in our case very lengthy production build. Is there any way that allows me to only build a changed module or is the complete build a must? What are the best practices for building large projects? Best regards, Kai -- 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: Date Range
a simple idea that comes into my mind right now: draw the date picker widget, and add valueChange listener, on value selection change the css for the selected date and add the date to an list an select. on the first click add the date to the list and highlight the date, on the second click remove it from the list and change the css back (un- highlight). that would be the big picture, but i can't give exact directions. On Sep 13, 3:35 pm, shahid shahidza...@gmail.com wrote: hi Thomas, No I can't use that unfortunately. The design requirement is that the user should be able to select and highlight multiple dates on the calendar/date picker UI. On Sep 13, 12:47 pm, Brett Thomas brettptho...@gmail.com wrote: Could you use two date pickers for start and end? After the start is selected, set the date of the end to the next day or something On Sep 13, 2010 6:40 AM, shahid shahidza...@gmail.com wrote: I am looking for a way to be able to select multiple dates and highlight them in the calendar/date picker. What would be the best way to achieve this ? -- 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.comgoogle-web-toolkit%2Bunsubs cr...@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: FTP download link for GWT
use an usb stick, or use an remote server to download the SDK an after that download from there using winscp, that if u have access to a server (via ssh) that would have the permission to download zip,.. on it. On Sep 13, 9:00 am, Mayuresh mayuresh.v...@gmail.com wrote: Sorry for confusion. Actually I did not mean HTTP is completely blocked. Any downloads like .zip, .exe, .msi, .jar etc. etc. and some sites hosting freeware softwares have been blocked in our organization. Even I cannot access FTP link using any browser. However I can use FTP clients like WinSCP from which I can access any FTP link and download any files. So was I looking for an FTP link. Thanks for below link. I will check that out. However if the download page has again a link to .zip or .jar file, I will not be able to download anyway. Regards, Mayuresh. On Sep 10, 2:43 pm, Ikai L (Google) ika...@google.com wrote: Is HTTP completely blocked? For instance, can you use Maven? If you can, try this: http://googlewebtoolkit.blogspot.com/2010/08/how-to-use-google-plugin... (Seems strange HTTP would be blocked, as you are emailing over Gmail right now) On Fri, Sep 10, 2010 at 12:47 AM, Mayuresh mayuresh.v...@gmail.com wrote: Hello, Our organization has blocked downloads over http(s). However the same works with FTP client. Since I am not able to open GWT download page, is there any FTP download link for GWT where I can get the latest version? Thanks and regards, Mayuresh. -- 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.comgoogle-web-toolkit%2Bunsubs cr...@googlegroups.com . For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en. -- Ikai Lan Developer Programs Engineer, Google App Engine Blog:http://googleappengine.blogspot.com Twitter:http://twitter.com/app_engine Reddit:http://www.reddit.com/r/appengine-Hide quoted text - - Show quoted text - -- 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.
Date Picker component
Hie I was looking for the date picker component and found one as: http://google-web-toolkit.googlecode.com/svn/javadoc/1.6/com/google/gwt/user/datepicker/client/DatePicker.html http://google-web-toolkit.googlecode.com/svn/javadoc/1.6/com/google/gwt/user/datepicker/client/DatePicker.htmlThis is good but it remains like an open widget on the page. What i want is a small icon clicking on which show the component as a popup. I select the date which fills the date text box and close the calender. How to do that? Also the DateFormat part doesnt work as is given in example of above page. Please advise. Thankx and Regards Vik Founder www.sakshum.com www.sakshum.blogspot.com -- 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.
To cancel form submit event of FormPanel on press of enter key
Is there any way to cancel a GWT submit event on press of enter key. I want to perform som validations on the gwt page and then only invoke form.submit() method. but form gets submitted by pressing of enter key. Any suggestions to do the same ?? -- 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.
DockLayoutpanel question
I am missing the border and no scroll bar when I run in dev mode. Any idea? Where is my code. g:DockLayoutPanel unit='EM' g:north size='5' g:LabelTop/g:Label /g:north g:west size='15' g:HTMLPanel table tr td g:LabelName/g:Label /td /tr /table /g:HTMLPanel /g:west g:center g:ScrollPanel g:LabelContent Area/g:Label /g:ScrollPanel /g:center /g:DockLayoutPanel /ui:UiBinder Thanks, Pradeep -- 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.
SplitLayoutPanel doesn't show dragger and center widget in ie7 in GWT 2.0.4
It shows only small piece of dregger and if i click on it center widget appears - problem only in ie7. -- 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.
Difficult running a GWTTestCase
Hi, I seek advice and help getting my first GWTTestCase running within Eclipse. I generated a new web application with the Eclipse GWT/Google App Engine plug ins. I created a module and am having difficulty getting my first GWTTestCase to run. I get the following error when I execute the GWTTestCase within Eclipse, which states my test case is not in the class path. com.google.gwt.junit.JUnitFatalLaunchException: The test class 'com.myapp.client.MyAppTest' was not found in module 'com.myapp.MyApp'; no compilation unit for that type was seen I am confused by this error, since I placed the test class in the generated com.MyApp.client package. My gwt.xml is also generated by Eclipse and contains the source path='client'/ entry it in, so I need further help understanding why my GWTUnitTest won't run. My application runs as expected in hosted mode and when deployed. I want to start writing unit tests and need help. What am I missing? MyAppTest.java - package com.myapp.client; import com.google.gwt.junit.client.GWTTestCase; public class MyAppTest extends GWTTestCase { @Override public String getModuleName() { return com.myapp.MyApp; } public void testLoadMyAppProcedure() { MyApp module = new MyApp(); module.loadMyAppProcedure(); } } Eclipse JUnit Error - com.google.gwt.junit.JUnitFatalLaunchException: The test class 'com.myapp.client.MyAppTest' was not found in module 'com.myapp.MyApp'; no compilation unit for that type was seen at com.google.gwt.junit.JUnitShell.checkTestClassInCurrentModule(JUnitShell.java: 605) at com.google.gwt.junit.JUnitShell.runTestImpl(JUnitShell.java:1189) at com.google.gwt.junit.JUnitShell.runTestImpl(JUnitShell.java:1152) at com.google.gwt.junit.JUnitShell.runTest(JUnitShell.java:541) at com.google.gwt.junit.client.GWTTestCase.runTest(GWTTestCase.java: 406) at junit.framework.TestCase.runBare(TestCase.java:134) at junit.framework.TestResult$1.protect(TestResult.java:110) at junit.framework.TestResult.runProtected(TestResult.java:128) at junit.framework.TestResult.run(TestResult.java:113) at junit.framework.TestCase.run(TestCase.java:124) at com.google.gwt.junit.client.GWTTestCase.run(GWTTestCase.java:282) at junit.framework.TestSuite.runTest(TestSuite.java:243) at junit.framework.TestSuite.run(TestSuite.java:238) at org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java: 83) at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java: 49) at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java: 38) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java: 467) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java: 683) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java: 390) at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java: 197) References: http://code.google.com/webtoolkit/doc/latest/DevGuideTesting.html http://code.google.com/webtoolkit/articles/testing_methodologies_using_gwt.html -- 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.
Rapid development of desktop-like web applications
Hello everybody, I'm looking for a visual RAD IDE that would allow me the rapid development of desktop-like web applications. It should assist me on data binding too. If you know Visual Basic, it should be similar to it. The web application requirements are: - CRUD functionality for record management in relational databases - displaying data in tabular form, master/details form - generate reports - generate graphs I've got no restrictions on languages, the goal is to find tools that make development the fastest possible. Would you have any advice? Thank you very much in advance! -- 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.
Custom map
Hello everyone! I have a question about custom map in GWT. In fact, I've to create an application within an interactive map like google maps, but the map is uploaded from my file system. For example, I have an apartment map and I want to upload it in my application to use it for create clickable object on it. Is it possible? Thank you Bye! -- 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: Gwt-platform vs Guit
Hello all, just about your sentence Chistian : That's why, I'm giving a little more work to my views that apply to simple local task that isn't relevant to the presenter, thus simplifying my code and making it more easy to understand and more easy to read. Yes I have to test it, but I have simple test to write that I would have wrote inside my presenters anyway. So, if I understand correctly, it means that it leads to use GWTTestCase which is really slow. And this was the main reason of using MVP with GWT (to skip GWTTestCase). Or is there something that I did not get to test Views with jUnit ? Thanks for your clarifications. 2010/8/24 Christian Goudreau goudreau.christ...@gmail.com I believe is good to have 2 frameworks instead of one... competition leads to great things.. I agree with that point :D I will love to hear your opinion on this: http://code.google.com/p/guit/wiki/GuitViewDesign Already took a loot, well first note, I'm not a conventional MVP user and don't take my arguments as if I wanted to be one :D I'm more a MVP part 2 like explained in the GWT page. Since you've done a good job to automate the event process between the view and the presenter, what will follow will probably not apply to your framework. No need for your binder class if you do MVP part 2 :D No custom annotation needed too and also no need to learn anything but what GWT already offer in that case. I think that when GWT introduced UiBinder, the already gave us a passive view that does nothing rendering our implementation of the MVP pattern a little bit more complexe since we had to pass everything from another passive view to the presenter. That's why, I'm giving a little more work to my views that apply to simple local task that isn't relevant to the presenter, thus simplifying my code and making it more easy to understand and more easy to read. Yes I have to test it, but I have simple test to write that I would have wrote inside my presenters anyway. Now I have a clear distinction between what's relevant to my app and what's relevant only to my view. You may disagree with me, but I ripped around 15 % lines of code in my apps by doing this. What's your going to do will disallow that, while not being a bad thing if you really have two passive view (view and view.ui.xml), but wouldn't be enough for that pattern that I now love :D Then another big question, how this will work with UiBinder for custom widgets that you'll make ? Yeah well, I think we fall back to old ways without any presenter associated. Anyway, I'm more a doer than a thinker, so I'll let anyone else elaborate on the subject :D (Philippe Beaudoin is the brain behind Gwt-Platform :D) Cheers, On Tue, Aug 24, 2010 at 10:25 AM, Gal Dolber gal.dol...@gmail.com wrote: Hi Christian! I will love to join forces to have one great framework, but the truth is that Guit started a year ago as the infrastructure for a project I am about to finish right now. The funny part is that I also started looking at the code of gwt-presenter and mvp4g. I believe is good to have 2 frameworks instead of one... competition leads to great things.. Now, about the Async places, if you annotate the Presenter's Place with RunAsync your place automatically gets splitted ( http://code.google.com/p/guit/wiki/PlaceManager , at the bottom). Also, one important thing about Guit is that all that generated code that it produces is the same that you will hand-write without it. You can see that looking at the generated code... you will only find event registrations and a few field bindings, but you will never feel like loosing control over your code. I will love to hear your opinion on this: http://code.google.com/p/guit/wiki/GuitViewDesign That's the craziest change in my mvp implementation so far, and I loving it. I am looking for down-sides and extra requirements that I didn't think of yet. Cheers! 2010/8/24 Christian Goudreau goudreau.christ...@gmail.com I saw that you can add an annotation over functions, but over an entire place, I don't know. Also, yeah well you may be generating a lot of code with generators, but I'm afraid that in the end, you'll loose freedom for customization. I would have loved to join forces into making a great framework instead of having different products, but I think each project have their good and bad points, even if we still have to fully compare each products.Our devotion to GWT-Platform started with Gwt-Presenter and we're committed to support it and improve it along with our users. Our commitment is to the community and it will always be a priority to improve our users experience with GWT-Platform and GWT. Anyway, nice job Gal, it's sure saves a lot of boiler plate for simple web pages like our Samples, I'll take a look even more deeper to see where it goes against something more complexe. Until I can speek with more objectivity while talking about Guit, I'll only say two
Re: Rapid development of desktop-like web applications
Hi, You could have a look on http://www.springsource.org/roo (see this presentation http://www.youtube.com/watch?v=a46hJYtsP-8) Deployment is hassle-free on App Engine. Reports and graphs would still require manual coding though. You could also try free versions of Visual Studio and SQL Server. Kindly share with us your findings. On Sep 13, 2:19 pm, csaffi csaff...@gmail.com wrote: Hello everybody, I'm looking for a visual RAD IDE that would allow me the rapid development of desktop-like web applications. It should assist me on data binding too. If you know Visual Basic, it should be similar to it. The web application requirements are: - CRUD functionality for record management in relational databases - displaying data in tabular form, master/details form - generate reports - generate graphs I've got no restrictions on languages, the goal is to find tools that make development the fastest possible. Would you have any advice? Thank you very much in advance! -- 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: Gwt-platform vs Guit
Nah no unit test with GwtTestCase needed. In fact I'm using pure MVP pattern as exlained by Martin Fowler and Gwt MVP part 2. Supervising controller, my view call on the presenter a handler associated with my UiEvents. That's the only work my view does. Cheers, On Mon, Sep 13, 2010 at 2:24 PM, Nicolas ANTONIAZZI nicolas.antonia...@gmail.com wrote: Hello all, just about your sentence Chistian : That's why, I'm giving a little more work to my views that apply to simple local task that isn't relevant to the presenter, thus simplifying my code and making it more easy to understand and more easy to read. Yes I have to test it, but I have simple test to write that I would have wrote inside my presenters anyway. So, if I understand correctly, it means that it leads to use GWTTestCase which is really slow. And this was the main reason of using MVP with GWT (to skip GWTTestCase). Or is there something that I did not get to test Views with jUnit ? Thanks for your clarifications. 2010/8/24 Christian Goudreau goudreau.christ...@gmail.com I believe is good to have 2 frameworks instead of one... competition leads to great things.. I agree with that point :D I will love to hear your opinion on this: http://code.google.com/p/guit/wiki/GuitViewDesign Already took a loot, well first note, I'm not a conventional MVP user and don't take my arguments as if I wanted to be one :D I'm more a MVP part 2 like explained in the GWT page. Since you've done a good job to automate the event process between the view and the presenter, what will follow will probably not apply to your framework. No need for your binder class if you do MVP part 2 :D No custom annotation needed too and also no need to learn anything but what GWT already offer in that case. I think that when GWT introduced UiBinder, the already gave us a passive view that does nothing rendering our implementation of the MVP pattern a little bit more complexe since we had to pass everything from another passive view to the presenter. That's why, I'm giving a little more work to my views that apply to simple local task that isn't relevant to the presenter, thus simplifying my code and making it more easy to understand and more easy to read. Yes I have to test it, but I have simple test to write that I would have wrote inside my presenters anyway. Now I have a clear distinction between what's relevant to my app and what's relevant only to my view. You may disagree with me, but I ripped around 15 % lines of code in my apps by doing this. What's your going to do will disallow that, while not being a bad thing if you really have two passive view (view and view.ui.xml), but wouldn't be enough for that pattern that I now love :D Then another big question, how this will work with UiBinder for custom widgets that you'll make ? Yeah well, I think we fall back to old ways without any presenter associated. Anyway, I'm more a doer than a thinker, so I'll let anyone else elaborate on the subject :D (Philippe Beaudoin is the brain behind Gwt-Platform :D) Cheers, On Tue, Aug 24, 2010 at 10:25 AM, Gal Dolber gal.dol...@gmail.comwrote: Hi Christian! I will love to join forces to have one great framework, but the truth is that Guit started a year ago as the infrastructure for a project I am about to finish right now. The funny part is that I also started looking at the code of gwt-presenter and mvp4g. I believe is good to have 2 frameworks instead of one... competition leads to great things.. Now, about the Async places, if you annotate the Presenter's Place with RunAsync your place automatically gets splitted ( http://code.google.com/p/guit/wiki/PlaceManager , at the bottom). Also, one important thing about Guit is that all that generated code that it produces is the same that you will hand-write without it. You can see that looking at the generated code... you will only find event registrations and a few field bindings, but you will never feel like loosing control over your code. I will love to hear your opinion on this: http://code.google.com/p/guit/wiki/GuitViewDesign That's the craziest change in my mvp implementation so far, and I loving it. I am looking for down-sides and extra requirements that I didn't think of yet. Cheers! 2010/8/24 Christian Goudreau goudreau.christ...@gmail.com I saw that you can add an annotation over functions, but over an entire place, I don't know. Also, yeah well you may be generating a lot of code with generators, but I'm afraid that in the end, you'll loose freedom for customization. I would have loved to join forces into making a great framework instead of having different products, but I think each project have their good and bad points, even if we still have to fully compare each products.Our devotion to GWT-Platform started with Gwt-Presenter and we're committed to support it and improve it along with our users. Our commitment is to the community
Re: clearing or preventing double-click selection
In your onClick method you can call event.preventDefault() to keep the browser from handling the event. On Sep 12, 1:29 pm, decitrig rws...@gmail.com wrote: I'm working on an application that responds to double clicks on text labels, and I'd like to either disable double-click text selection or clear it from within the event handler. I tried $doc.selection.clear() in a native method, but apparently $doc.selection is not an object - it may be that the selection isn't occurring until after the double- click handler is getting called. I did try stopPropagation and preventDefault, neither helped. Any pointers? -- decitrig -- 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: How could we know if GWT project will continue to be maintained by Google?
I am pretty sure gmail is.. On Sep 13, 7:48 am, marius.andreiana marius.andrei...@gmail.com wrote: Hello, While comparing GWT with other solutions for a long-term project, we wondered how could we know if GWT project will continue to be maintained by Google, since it's available for free and Google makes no (direct) profit from it. We tried to look at what projects Google has that rely on GWT and are also profitable, such as AdWords. Are there any others? Is any part of Google Apps using GWT? (Wave will be closed, so it doesn't count). PS: I know GWT is open source. Maintaining it by ourselves in case Google decides to drop support for it it's not an option for us. Thanks Marius -- 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.
Unchecked exceptions from server to client
Hi, I have this; public abstract class CreateException extends RuntimeException implements Serializable { } Notice that I extend from RuntimeException, making it an unchecked exception. Then I have these two; public class DuplicateEmailCreationException extends CreateException { } public class DuplicatePhoneCreationException extends CreateException { } My service is this one; @RemoteServiceRelativePath(AccountService) public interface AccountService extends RemoteService { public void createAccount(String phone, String email); } Notice I don't declare my CreateException using the throws keyword. Now I would expect my view to work. It's this one; ... accountServiceAsync.createAccount(tbPhone.getValue(), tbEmail.getValue(), new AsyncCallbackVoid() { public void onSuccess(Void result) { } public void onFailure(Throwable exception) { if ( exception instanceof DuplicatePhoneCreationException) { // handle it } else { if (exception instanceof DuplicateEmailCreationException) { // handle it } } } ... However, it does not work. But if I add the throws CreateException in the AccountService's createAccount method, it works fine. The whole point with unchecked exceptions, is that I don't have to define them everywhere. Is this not supported ? Or what am I doing wrong here ? Thanks, :-) Kasper -- 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: clearing or preventing double-click selection
On Sep 13, 3:08 pm, lineman78 linema...@gmail.com wrote: In your onClick method you can call event.preventDefault() to keep the browser from handling the event. I already tried that in the doubleclick handler, no luck. Just implemented it in a single-click handler, still no luck. On Sep 12, 1:29 pm, decitrig rws...@gmail.com wrote: I'm working on an application that responds to double clicks on text labels, and I'd like to either disable double-click text selection or clear it from within the event handler. I tried $doc.selection.clear() in a native method, but apparently $doc.selection is not an object - it may be that the selection isn't occurring until after the double- click handler is getting called. I did try stopPropagation and preventDefault, neither helped. Any pointers? -- decitrig -- 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.
Fancy Tooltip or PopupPanel
I'm trying to mimic the google maps popups with an arrow from the popup pointing towards a widget. How can this be accomplished in GWT? What I'm really trying to do is have a vertical panel of radio buttons representing products, and when a product/radio button is selected, have a popup display on the left of the button with an arrow (as part of the popup) point to the radio button and display the product information. Any help would be appreciated. -- 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: To cancel form submit event of FormPanel on press of enter key
add a submit handler and you can call cancel on the event. On Sep 13, 9:58 am, nirav patani nirav...@gmail.com wrote: Is there any way to cancel a GWT submit event on press of enter key. I want to perform som validations on the gwt page and then only invoke form.submit() method. but form gets submitted by pressing of enter key. Any suggestions to do the same ?? -- 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.
compile output without obfuscate css
i know able to use @external on each css to prevent obfuscate of css. is there any compile flag i can set so that when compile all css will not be obfuscate? -- 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: How could we know if GWT project will continue to be maintained by Google?
gmail is written with the google closure library/compiler On Sep 13, 3:11 pm, lineman78 linema...@gmail.com wrote: I am pretty sure gmail is.. On Sep 13, 7:48 am, marius.andreiana marius.andrei...@gmail.com wrote: Hello, While comparing GWT with other solutions for a long-term project, we wondered how could we know if GWT project will continue to be maintained by Google, since it's available for free and Google makes no (direct) profit from it. We tried to look at what projects Google has that rely on GWT and are also profitable, such as AdWords. Are there any others? Is any part of Google Apps using GWT? (Wave will be closed, so it doesn't count). PS: I know GWT is open source. Maintaining it by ourselves in case Google decides to drop support for it it's not an option for us. Thanks Marius -- 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.
Error compiling GWT source code from trunk
Hi I have checked out GWT source code from the trunk and encountered the following the error when compiled with Apache Ant 1.8.0: C:\gwt\trunkant Buildfile: C:\gwt\trunk\build.xml [taskdef] Could not load definitions from resource net/sf/antcontrib/antlib.xml. It could not be found. [taskdef] Could not load definitions from resource emma_ant.properties. It could not be found. build: [taskdef] Could not load definitions from resource net/sf/antcontrib/antlib.xml. It could not be found. [taskdef] Could not load definitions from resource emma_ant.properties. It could not be found. dev: [taskdef] Could not load definitions from resource net/sf/antcontrib/antlib.xml. It could not be found. [taskdef] Could not load definitions from resource emma_ant.properties. It could not be found. buildtools: [taskdef] Could not load definitions from resource net/sf/antcontrib/antlib.xml. It could not be found. [taskdef] Could not load definitions from resource emma_ant.properties. It could not be found. build: [taskdef] Could not load definitions from resource net/sf/antcontrib/antlib.xml. It could not be found. [taskdef] Could not load definitions from resource emma_ant.properties. It could not be found. ant-gwt: [taskdef] Could not load definitions from resource net/sf/antcontrib/antlib.xml. It could not be found. [taskdef] Could not load definitions from resource emma_ant.properties. It could not be found. compile: [gwt.javac] C:\gwt\trunk\build-tools\ant-gwt\build.xml:11: warning: 'includ eantruntime' was not set, defaulting to build.sysclasspath=last; set to false for repeatable builds build: customchecks: [taskdef] Could not load definitions from resource net/sf/antcontrib/antlib.xml. It could not be found. [taskdef] Could not load definitions from resource emma_ant.properties. It could not be found. compile: [gwt.javac] C:\gwt\trunk\build-tools\customchecks\build.xml:8: warning: 'includeantruntime' was not set, defaulting to build.sysclasspath=last; set to false for repeatable builds [gwt.javac] Compiling 2 source files to C:\gwt\trunk\build\out\build-tools\customchecks\bin [gwt.javac] C:\gwt\trunk\build-tools\customchecks\src\com\google\gwt\checkstyle\FieldCheck.java:19: package com.puppycrawl.tools.checkstyle.api does not exist [gwt.javac] import com.puppycrawl.tools.checkstyle.api.DetailAST; [gwt.javac] ^ [gwt.javac] C:\gwt\trunk\build-tools\customchecks\src\com\google\gwt\checkstyle\FieldCheck.java:20: package com.puppycrawl.tools.checkstyle.api does not exist [gwt.javac] import com.puppycrawl.tools.checkstyle.api.TokenTypes; ... Do you have any idea of what could be the problem? -- Hez -- 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: Error compiling GWT source code from trunk
I'm sorry, please ignore this email and there are some missing folders in my svn folder :-( On Tue, Sep 14, 2010 at 10:20 AM, hezjing hezj...@gmail.com wrote: Hi I have checked out GWT source code from the trunk and encountered the following the error when compiled with Apache Ant 1.8.0: C:\gwt\trunkant Buildfile: C:\gwt\trunk\build.xml [taskdef] Could not load definitions from resource net/sf/antcontrib/antlib.xml. It could not be found. [taskdef] Could not load definitions from resource emma_ant.properties. It could not be found. build: [taskdef] Could not load definitions from resource net/sf/antcontrib/antlib.xml. It could not be found. [taskdef] Could not load definitions from resource emma_ant.properties. It could not be found. dev: [taskdef] Could not load definitions from resource net/sf/antcontrib/antlib.xml. It could not be found. [taskdef] Could not load definitions from resource emma_ant.properties. It could not be found. buildtools: [taskdef] Could not load definitions from resource net/sf/antcontrib/antlib.xml. It could not be found. [taskdef] Could not load definitions from resource emma_ant.properties. It could not be found. build: [taskdef] Could not load definitions from resource net/sf/antcontrib/antlib.xml. It could not be found. [taskdef] Could not load definitions from resource emma_ant.properties. It could not be found. ant-gwt: [taskdef] Could not load definitions from resource net/sf/antcontrib/antlib.xml. It could not be found. [taskdef] Could not load definitions from resource emma_ant.properties. It could not be found. compile: [gwt.javac] C:\gwt\trunk\build-tools\ant-gwt\build.xml:11: warning: 'includ eantruntime' was not set, defaulting to build.sysclasspath=last; set to false for repeatable builds build: customchecks: [taskdef] Could not load definitions from resource net/sf/antcontrib/antlib.xml. It could not be found. [taskdef] Could not load definitions from resource emma_ant.properties. It could not be found. compile: [gwt.javac] C:\gwt\trunk\build-tools\customchecks\build.xml:8: warning: 'includeantruntime' was not set, defaulting to build.sysclasspath=last; set to false for repeatable builds [gwt.javac] Compiling 2 source files to C:\gwt\trunk\build\out\build-tools\customchecks\bin [gwt.javac] C:\gwt\trunk\build-tools\customchecks\src\com\google\gwt\checkstyle\FieldCheck.java:19: package com.puppycrawl.tools.checkstyle.api does not exist [gwt.javac] import com.puppycrawl.tools.checkstyle.api.DetailAST; [gwt.javac] ^ [gwt.javac] C:\gwt\trunk\build-tools\customchecks\src\com\google\gwt\checkstyle\FieldCheck.java:20: package com.puppycrawl.tools.checkstyle.api does not exist [gwt.javac] import com.puppycrawl.tools.checkstyle.api.TokenTypes; ... Do you have any idea of what could be the problem? -- Hez -- Hez -- 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: Error compiling GWT source code from trunk
H ... I think I have already checked-out the full source code from trunk now, but the same compilation error still exist :-( I must be missing something here, can someone please help? On Tue, Sep 14, 2010 at 10:54 AM, hezjing hezj...@gmail.com wrote: I'm sorry, please ignore this email and there are some missing folders in my svn folder :-( On Tue, Sep 14, 2010 at 10:20 AM, hezjing hezj...@gmail.com wrote: Hi I have checked out GWT source code from the trunk and encountered the following the error when compiled with Apache Ant 1.8.0: C:\gwt\trunkant Buildfile: C:\gwt\trunk\build.xml [taskdef] Could not load definitions from resource net/sf/antcontrib/antlib.xml. It could not be found. [taskdef] Could not load definitions from resource emma_ant.properties. It could not be found. build: [taskdef] Could not load definitions from resource net/sf/antcontrib/antlib.xml. It could not be found. [taskdef] Could not load definitions from resource emma_ant.properties. It could not be found. dev: [taskdef] Could not load definitions from resource net/sf/antcontrib/antlib.xml. It could not be found. [taskdef] Could not load definitions from resource emma_ant.properties. It could not be found. buildtools: [taskdef] Could not load definitions from resource net/sf/antcontrib/antlib.xml. It could not be found. [taskdef] Could not load definitions from resource emma_ant.properties. It could not be found. build: [taskdef] Could not load definitions from resource net/sf/antcontrib/antlib.xml. It could not be found. [taskdef] Could not load definitions from resource emma_ant.properties. It could not be found. ant-gwt: [taskdef] Could not load definitions from resource net/sf/antcontrib/antlib.xml. It could not be found. [taskdef] Could not load definitions from resource emma_ant.properties. It could not be found. compile: [gwt.javac] C:\gwt\trunk\build-tools\ant-gwt\build.xml:11: warning: 'includ eantruntime' was not set, defaulting to build.sysclasspath=last; set to false for repeatable builds build: customchecks: [taskdef] Could not load definitions from resource net/sf/antcontrib/antlib.xml. It could not be found. [taskdef] Could not load definitions from resource emma_ant.properties. It could not be found. compile: [gwt.javac] C:\gwt\trunk\build-tools\customchecks\build.xml:8: warning: 'includeantruntime' was not set, defaulting to build.sysclasspath=last; set to false for repeatable builds [gwt.javac] Compiling 2 source files to C:\gwt\trunk\build\out\build-tools\customchecks\bin [gwt.javac] C:\gwt\trunk\build-tools\customchecks\src\com\google\gwt\checkstyle\FieldCheck.java:19: package com.puppycrawl.tools.checkstyle.api does not exist [gwt.javac] import com.puppycrawl.tools.checkstyle.api.DetailAST; [gwt.javac] ^ [gwt.javac] C:\gwt\trunk\build-tools\customchecks\src\com\google\gwt\checkstyle\FieldCheck.java:20: package com.puppycrawl.tools.checkstyle.api does not exist [gwt.javac] import com.puppycrawl.tools.checkstyle.api.TokenTypes; ... Do you have any idea of what could be the problem? -- Hez -- Hez -- Hez -- 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: compile output without obfuscate css
Yeah, you can use the -style flag to do this On Mon, Sep 13, 2010 at 9:29 PM, asianCoolz second.co...@gmail.com wrote: i know able to use @external on each css to prevent obfuscate of css. is there any compile flag i can set so that when compile all css will not be obfuscate? -- 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.comgoogle-web-toolkit%2bunsubscr...@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.
[gwt-contrib] Extract violations from being a field in sideEffects to a top-level field. Removed the handling ... (issue846802)
Reviewers: rjrjr, robertvawter, Description: Extract violations from being a field in sideEffects to a top-level field. Removed the handling of violations from DeltaValuesStoreJsonImpl.onCommit method. Will do further cleanup once Receiver has a onViolations method. Patch by: amitmanjhi Review by: rjrjr, robertvawter Please review this at http://gwt-code-reviews.appspot.com/846802/show Affected files: M user/src/com/google/gwt/requestfactory/client/impl/AbstractJsonListRequest.java M user/src/com/google/gwt/requestfactory/client/impl/AbstractJsonObjectRequest.java M user/src/com/google/gwt/requestfactory/client/impl/AbstractPrimitiveRequest.java M user/src/com/google/gwt/requestfactory/client/impl/AbstractRequest.java M user/src/com/google/gwt/requestfactory/client/impl/DeltaValueStoreJsonImpl.java M user/src/com/google/gwt/requestfactory/client/impl/JsonResults.java M user/src/com/google/gwt/requestfactory/server/JsonRequestProcessor.java M user/test/com/google/gwt/requestfactory/client/RequestFactoryTest.java -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] PopupPanel rolldown animation is only accesable with incubator!?
Hi, While factoring out a dependency on GWT incubator I stumbled upon the way the animation type is selected in the PopupPanel. This is what the javadoc says: /** * Sets the animation used to animate this popup. Used by gwt- incubator to * allow DropDownPanel to override the default popup animation. Not protected * because the exact API may change in gwt 1.6. * * @param animation the animation to use for this popup */ void setAnimation(ResizeAnimation animation) { resizeAnimation = animation; } So basically I will have to put my code in the same package if I want to re-enable the rolldown animation instead of the centered one for PopupPanel... David -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Makes IsWidget a first class concept, and makes it convenient to (issue864801)
LGTM (FWIW, and speaking only about the API) http://gwt-code-reviews.appspot.com/864801/diff/3001/4034 File user/test/com/google/gwt/user/client/ui/SimplePanelTest.java (right): http://gwt-code-reviews.appspot.com/864801/diff/3001/4034#newcode35 user/test/com/google/gwt/user/client/ui/SimplePanelTest.java:35: p.setWidget(null); On 2010/09/12 23:14:24, rjrjr wrote: On 2010/09/12 13:43:57, jlabanca wrote: Is that because Widget extends IsWidget? I assume it uses the IsWidget version then, and in general does a runtime check? Parameter ambiguity is all decided at compile time in Java, based on variable type. Receiver choice is dynamic, overload resolution is static. And actually, the more specific version wins, setWidget(Widget) in this case. FYI, this is defined in JLS (i.e. it's not just a JDK implementation detail), and yes that's because Widget extends IsWidget: http://java.sun.com/docs/books/jls/third_edition/html/expressions.html#15.12.2.5 http://gwt-code-reviews.appspot.com/864801/diff/29001/30025 File user/src/com/google/gwt/user/client/ui/TabLayoutPanel.java (right): http://gwt-code-reviews.appspot.com/864801/diff/29001/30025#newcode195 user/src/com/google/gwt/user/client/ui/TabLayoutPanel.java:195: public void add(IsWidget w, String text) { Javadoc? http://gwt-code-reviews.appspot.com/864801/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: EventBus interface
On Sep 13, 1:15 am, Jarrod Carlson jarrod.carl...@gmail.com wrote: Well, when I say always present, I mean _probably_ always present. So in this case, simply not unregistering _shouldn't_ be an issue. Your use of a HandlerRegistrationPool is clever... I might try that; thanks. Well, if I were you, given your description of the use case, I'd use a ResettableEventBus (StopperedEventBus in 2.1.0.M3). If you don't want to unregister all your handlers in onUnload, then mix EventBus and ResettableEventBus, or even use several ResettableEventBus. In other words, ResettableEventBus is very similar to Patrick's HandlerRegistrationPool, just specialized in handling registrations on an EventBus rather than HandlerRegistrations from any kind of registry (EventBus or HandlerManager, which are distinct things post-M3). -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Makes IsWidget a first class concept, and makes it convenient to (issue864801)
LGTM http://gwt-code-reviews.appspot.com/864801/diff/29001/30010 File user/src/com/google/gwt/user/client/ui/AcceptsOneWidget.java (right): http://gwt-code-reviews.appspot.com/864801/diff/29001/30010#newcode23 user/src/com/google/gwt/user/client/ui/AcceptsOneWidget.java:23: void setWidget(IsWidget w); JavaDoc? http://gwt-code-reviews.appspot.com/864801/diff/29001/30028 File user/src/com/google/gwt/user/client/ui/Widget.java (right): http://gwt-code-reviews.appspot.com/864801/diff/29001/30028#newcode37 user/src/com/google/gwt/user/client/ui/Widget.java:37: * This convenience method makes a null safe call to null-safe http://gwt-code-reviews.appspot.com/864801/diff/29001/30028#newcode40 user/src/com/google/gwt/user/client/ui/Widget.java:40: * @return the widget aspect, or null if w is null codenull/code http://gwt-code-reviews.appspot.com/864801/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Introduces Widget.LoadingDelegate, to allow a widget owner to act when (issue866801)
LGTM. Are there any GWT widgets that override onLoad / onUnload without calling super? Would this be better as an event type instead of a delegate? http://gwt-code-reviews.appspot.com/866801/diff/1/2 File user/src/com/google/gwt/user/client/ui/Widget.java (right): http://gwt-code-reviews.appspot.com/866801/diff/1/2#newcode43 user/src/com/google/gwt/user/client/ui/Widget.java:43: * the default implementation of {...@link Widget#onLoad()}. Awkward sentence construction in these methods' JavaDoc. Called by the default implementation of {...@link Widget#onLoad} when the Widget is attached to the document. http://gwt-code-reviews.appspot.com/866801/diff/1/2#newcode387 user/src/com/google/gwt/user/client/ui/Widget.java:387: * browser's document. Indicate the default behavior in onLoad() and onUnload()'s documentation. http://gwt-code-reviews.appspot.com/866801/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Minor refactor of ClientBundles used in Cell Widgets. Ensures that all method names in ClientBun... (issue859801)
LGTM http://gwt-code-reviews.appspot.com/859801/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Demonstrate client-side Editor errors. (issue857802)
Reviewers: rjrjr, Message: This only implements errors created within the editor hierarchy. You can see this in action by running the DTRF sample and entering a nonsensical value in the zipcode field. This patch is a little bit rough, but I'd like to get some feedback on the overall approach and API change before wrapping it up. Description: Demonstrate client-side Editor errors. Add EditorError, HasEditorDelegate, and HasEditorErrors interfaces. Add getUnconsumedErrors() to the two EditorDriver types. Add ValueBoxEditor which uses getValueOrThrow() and reports errors. Update AbstractEditorDelegate and generators to support error reporting. Add EditorErrorPanel to wrap a single Editor. Make generated code only use raw types to reduce the number of generated types when editing generic types. Clean up EditorData initialization by using a builder pattern. Fix EditorModel bug not analyzing CompositeEditor component editor types. Patch by: bobv Review by: rjrjr Please review this at http://gwt-code-reviews.appspot.com/857802/show Affected files: M samples/dynatablerf/src/com/google/gwt/sample/dynatablerf/client/PersonEditorWorkflow.java M samples/dynatablerf/src/com/google/gwt/sample/dynatablerf/client/widgets/AddressEditor.java M samples/dynatablerf/src/com/google/gwt/sample/dynatablerf/client/widgets/AddressEditor.ui.xml M samples/dynatablerf/src/com/google/gwt/sample/dynatablerf/client/widgets/NameLabel.java M samples/dynatablerf/src/com/google/gwt/sample/dynatablerf/domain/Address.java M samples/dynatablerf/src/com/google/gwt/sample/dynatablerf/domain/Person.java M samples/dynatablerf/src/com/google/gwt/sample/dynatablerf/domain/Professor.java M samples/dynatablerf/src/com/google/gwt/sample/dynatablerf/domain/Student.java A samples/dynatablerf/src/com/google/gwt/sample/dynatablerf/server/PersonFuzzer.java A samples/dynatablerf/src/com/google/gwt/sample/dynatablerf/server/PersonSource.java M samples/dynatablerf/src/com/google/gwt/sample/dynatablerf/server/SchoolCalendarService.java M samples/dynatablerf/war/WEB-INF/web.xml M user/src/com/google/gwt/editor/client/CompositeEditor.java M user/src/com/google/gwt/editor/client/EditorDelegate.java A user/src/com/google/gwt/editor/client/EditorError.java A user/src/com/google/gwt/editor/client/HasEditorDelegate.java A user/src/com/google/gwt/editor/client/HasEditorErrors.java M user/src/com/google/gwt/editor/client/SimpleBeanEditorDriver.java M user/src/com/google/gwt/editor/client/ValueAwareEditor.java M user/src/com/google/gwt/editor/client/adapters/ListEditor.java M user/src/com/google/gwt/editor/client/adapters/TakesValueEditor.java A user/src/com/google/gwt/editor/client/adapters/ValueBoxEditor.java M user/src/com/google/gwt/editor/client/impl/AbstractEditorDelegate.java M user/src/com/google/gwt/editor/client/impl/AbstractSimpleBeanEditorDriver.java M user/src/com/google/gwt/editor/client/impl/SimpleBeanEditorDelegate.java M user/src/com/google/gwt/editor/client/testing/MockEditorDelegate.java M user/src/com/google/gwt/editor/client/testing/MockSimpleBeanEditorDriver.java A user/src/com/google/gwt/editor/client/ui/EditorErrorPanel.java A user/src/com/google/gwt/editor/client/ui/EditorErrorPanel.ui.xml M user/src/com/google/gwt/editor/rebind/AbstractEditorDriverGenerator.java M user/src/com/google/gwt/editor/rebind/SimpleBeanEditorDriverGenerator.java M user/src/com/google/gwt/editor/rebind/model/EditorData.java M user/src/com/google/gwt/editor/rebind/model/EditorModel.java M user/src/com/google/gwt/requestfactory/client/RequestFactoryEditorDriver.java M user/src/com/google/gwt/requestfactory/client/impl/AbstractRequestFactoryEditorDriver.java M user/src/com/google/gwt/requestfactory/client/impl/RequestFactoryEditorDelegate.java M user/src/com/google/gwt/requestfactory/client/testing/MockRequestFactoryEditorDriver.java M user/src/com/google/gwt/requestfactory/rebind/RequestFactoryEditorDriverGenerator.java M user/test/com/google/gwt/editor/EditorSuite.java A user/test/com/google/gwt/editor/client/Address.java A user/test/com/google/gwt/editor/client/AddressEditor.java A user/test/com/google/gwt/editor/client/EditorErrorTest.java A user/test/com/google/gwt/editor/client/Person.java A user/test/com/google/gwt/editor/client/PersonEditor.java A user/test/com/google/gwt/editor/client/PersonEditorDriver.java M user/test/com/google/gwt/editor/client/SimpleBeanEditorTest.java M user/test/com/google/gwt/editor/rebind/model/EditorModelTest.java -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
Re: [gwt-contrib] Re: EventBus interface
They're complimentary. ResettableEventBus is still hard to use from inside a widget because you're already have an interface to register. So the pool concept is when you already have HandlerRegistration objects. However, this new WidgetLoading delegate does make it easier. On Mon, Sep 13, 2010 at 4:28 AM, Thomas Broyer t.bro...@gmail.com wrote: On Sep 13, 1:15 am, Jarrod Carlson jarrod.carl...@gmail.com wrote: Well, when I say always present, I mean _probably_ always present. So in this case, simply not unregistering _shouldn't_ be an issue. Your use of a HandlerRegistrationPool is clever... I might try that; thanks. Well, if I were you, given your description of the use case, I'd use a ResettableEventBus (StopperedEventBus in 2.1.0.M3). If you don't want to unregister all your handlers in onUnload, then mix EventBus and ResettableEventBus, or even use several ResettableEventBus. In other words, ResettableEventBus is very similar to Patrick's HandlerRegistrationPool, just specialized in handling registrations on an EventBus rather than HandlerRegistrations from any kind of registry (EventBus or HandlerManager, which are distinct things post-M3). -- http://groups.google.com/group/Google-Web-Toolkit-Contributors -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
Re: [gwt-contrib] GWT Compiler or widget.gwt.xml file optimisation for 2.1 ?
This is slightly off-topic, but I'm curious -- would having a formal nightly build actually be acceptable for use within your locked-down environment? And would the same go for offline dev-mode plugin installers? Le 12 septembre 2010 08:43, David david.no...@gmail.com a écrit : Eric, No I'm not using the draftCompile option, I will see if it improves even more. And yes, after removing the incubator from my project the whole project compile process only took 1/3rd of the time (7 minutes instead of 22 minutes). I guess the main reason is probably because we had to import both gen2 and widgetideas in. I am not able/allowed to get the trunk downloaded due to corporate policies. That's why in the past I asked if the GWT team did not want to consider daily builds/dev builds. So I will have to wait until 2.1 is out. And when it is, I guess I will again have to ask for non installers for the IE/Firefox/Chrome plugins that do not mandate an internet connection :-S. So maybe for the poor corporate developers in very secure environments that fight to get GWT accepted: think about us! ;-) David On Fri, Sep 10, 2010 at 8:48 PM, Eric Ayers zun...@google.com wrote: Hi David, Are you using the -draftCompile option? The reason I ask is that using this option cuts out the optimization steps to make the compile run faster. The end result i that running the JDT compiler takes dominates the compile time when using it. Everything on the sourcepath is compiled at least once to build the TypeOracle. Every class that is actually used is run through the JDT compile library twice. So, removing even unreferenced files from the source path should have a significant impact. We are considering all kinds of performance improvements, but keeping modules small and independent and referencing the smallest number needed is going to always give the best compilation performance. In the future, if you need one widget from a module that is full of unreferenced code, you could define a custom one that includes just the paths you need to minimize compile time. If you like, run your build with a tip of trunk GWT and add -Dgwt.speedtracerlog=/tmp/speedtracer.html both with and without the incubator dependencies and I can tell more about why your compile time improved so dramatically. -Eric. On Fri, Sep 10, 2010 at 11:02 AM, stuckagain david.no...@gmail.com wrote: Hi, I managed to finally factor our the incubator widgets from my medium sized application and now that I have no dependencies left I saw the compile time decrease with 66%. Which is an amazing. We were only using 2 widgets yet this library had such a huge impact. Are there any plans to improve on this in the future ? David -- http://groups.google.com/group/Google-Web-Toolkit-Contributors -- Eric Z. Ayers Google Web Toolkit, Atlanta, GA USA -- http://groups.google.com/group/Google-Web-Toolkit-Contributors -- http://groups.google.com/group/Google-Web-Toolkit-Contributors -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
Re: [gwt-contrib] GWT Compiler or widget.gwt.xml file optimisation for 2.1 ?
Hi Eric, It would be acceptable for testing purpose only. releases to production have to be official versions. But it would make it soo much easier to already start using features that should normally be available by the time we go to production. David On Mon, Sep 13, 2010 at 3:02 PM, Joel Webber j...@google.com wrote: This is slightly off-topic, but I'm curious -- would having a formal nightly build actually be acceptable for use within your locked-down environment? And would the same go for offline dev-mode plugin installers? Le 12 septembre 2010 08:43, David david.no...@gmail.com a écrit : Eric, No I'm not using the draftCompile option, I will see if it improves even more. And yes, after removing the incubator from my project the whole project compile process only took 1/3rd of the time (7 minutes instead of 22 minutes). I guess the main reason is probably because we had to import both gen2 and widgetideas in. I am not able/allowed to get the trunk downloaded due to corporate policies. That's why in the past I asked if the GWT team did not want to consider daily builds/dev builds. So I will have to wait until 2.1 is out. And when it is, I guess I will again have to ask for non installers for the IE/Firefox/Chrome plugins that do not mandate an internet connection :-S. So maybe for the poor corporate developers in very secure environments that fight to get GWT accepted: think about us! ;-) David On Fri, Sep 10, 2010 at 8:48 PM, Eric Ayers zun...@google.com wrote: Hi David, Are you using the -draftCompile option? The reason I ask is that using this option cuts out the optimization steps to make the compile run faster. The end result i that running the JDT compiler takes dominates the compile time when using it. Everything on the sourcepath is compiled at least once to build the TypeOracle. Every class that is actually used is run through the JDT compile library twice. So, removing even unreferenced files from the source path should have a significant impact. We are considering all kinds of performance improvements, but keeping modules small and independent and referencing the smallest number needed is going to always give the best compilation performance. In the future, if you need one widget from a module that is full of unreferenced code, you could define a custom one that includes just the paths you need to minimize compile time. If you like, run your build with a tip of trunk GWT and add -Dgwt.speedtracerlog=/tmp/speedtracer.html both with and without the incubator dependencies and I can tell more about why your compile time improved so dramatically. -Eric. On Fri, Sep 10, 2010 at 11:02 AM, stuckagain david.no...@gmail.com wrote: Hi, I managed to finally factor our the incubator widgets from my medium sized application and now that I have no dependencies left I saw the compile time decrease with 66%. Which is an amazing. We were only using 2 widgets yet this library had such a huge impact. Are there any plans to improve on this in the future ? David -- http://groups.google.com/group/Google-Web-Toolkit-Contributors -- Eric Z. Ayers Google Web Toolkit, Atlanta, GA USA -- http://groups.google.com/group/Google-Web-Toolkit-Contributors -- http://groups.google.com/group/Google-Web-Toolkit-Contributors -- http://groups.google.com/group/Google-Web-Toolkit-Contributors -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
Re: [gwt-contrib] PopupPanel rolldown animation is only accesable with incubator!?
@jlabanca: Sounds like a bit of an anachronism in the code. Is this something we can clean up now (and do you need a hand getting it done if so)? Le 13 septembre 2010 03:50, stuckagain david.no...@gmail.com a écrit : Hi, While factoring out a dependency on GWT incubator I stumbled upon the way the animation type is selected in the PopupPanel. This is what the javadoc says: /** * Sets the animation used to animate this popup. Used by gwt- incubator to * allow DropDownPanel to override the default popup animation. Not protected * because the exact API may change in gwt 1.6. * * @param animation the animation to use for this popup */ void setAnimation(ResizeAnimation animation) { resizeAnimation = animation; } So basically I will have to put my code in the same package if I want to re-enable the rolldown animation instead of the centered one for PopupPanel... David -- http://groups.google.com/group/Google-Web-Toolkit-Contributors -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Introduces Widget.LoadingDelegate, to allow a widget owner to act when (issue866801)
LGTM http://gwt-code-reviews.appspot.com/866801/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Wrong error message...
...in ResizeComposite:25 java.lang.AssertionError: LayoutComposite requires that its wrapped widget implement HasLayout should be java.lang.AssertionError: LayoutComposite requires that its wrapped widget implements RequiresResize -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
Re: [gwt-contrib] Wrong error message...
Whoops, looks like I missed a rename :) Thanks for the heads-up. Le 13 septembre 2010 11:03, dflorey daniel.flo...@gmail.com a écrit : ...in ResizeComposite:25 java.lang.AssertionError: LayoutComposite requires that its wrapped widget implement HasLayout should be java.lang.AssertionError: LayoutComposite requires that its wrapped widget implements RequiresResize -- http://groups.google.com/group/Google-Web-Toolkit-Contributors -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
Re: [gwt-contrib] PopupPanel rolldown animation is only accesable with incubator!?
We didn't want to expose a setAnimation() method in PopupPanel until we had time to work out an API that would work for all widgets. However, you can use a JSNI to access protected methods from another package.. I know it isn't pretty, but it should get the job done. private native void doSetAnimationType(PopupPanel popup) /*-{ pop...@com.google.gwt.user.client.ui.popuppanel ::setAnimationType(Lcom/google/gwt/user/client/ui/PopupPanel$AnimationType;)( @com.google.gwt.user.client.ui.PopupPanel.AnimationType::ROLL_DOWN); }-*/; Thanks, John LaBanca jlaba...@google.com On Mon, Sep 13, 2010 at 9:35 AM, Joel Webber j...@google.com wrote: @jlabanca: Sounds like a bit of an anachronism in the code. Is this something we can clean up now (and do you need a hand getting it done if so)? Le 13 septembre 2010 03:50, stuckagain david.no...@gmail.com a écrit : Hi, While factoring out a dependency on GWT incubator I stumbled upon the way the animation type is selected in the PopupPanel. This is what the javadoc says: /** * Sets the animation used to animate this popup. Used by gwt- incubator to * allow DropDownPanel to override the default popup animation. Not protected * because the exact API may change in gwt 1.6. * * @param animation the animation to use for this popup */ void setAnimation(ResizeAnimation animation) { resizeAnimation = animation; } So basically I will have to put my code in the same package if I want to re-enable the rolldown animation instead of the centered one for PopupPanel... David -- http://groups.google.com/group/Google-Web-Toolkit-Contributors -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Introduces Widget.LoadingDelegate, to allow a widget owner to act when (issue866801)
On Mon, Sep 13, 2010 at 5:06 AM, b...@google.com wrote: LGTM. Are there any GWT widgets that override onLoad / onUnload without calling super? Nope. Would this be better as an event type instead of a delegate? I don't think so. I think this is much more in the nature of one owner, one widget. Am I being arbitrary? http://gwt-code-reviews.appspot.com/866801/diff/1/2 File user/src/com/google/gwt/user/client/ui/Widget.java (right): http://gwt-code-reviews.appspot.com/866801/diff/1/2#newcode43 user/src/com/google/gwt/user/client/ui/Widget.java:43: * the default implementation of {...@link Widget#onLoad()}. Awkward sentence construction in these methods' JavaDoc. Called by the default implementation of {...@link Widget#onLoad} when the Widget is attached to the document. http://gwt-code-reviews.appspot.com/866801/diff/1/2#newcode387 user/src/com/google/gwt/user/client/ui/Widget.java:387: * browser's document. Indicate the default behavior in onLoad() and onUnload()'s documentation. http://gwt-code-reviews.appspot.com/866801/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Introduces Widget.LoadingDelegate, to allow a widget owner to act when (issue866801)
Would this be better as an event type instead of a delegate? I don't think so. I think this is much more in the nature of one owner, one widget. Am I being arbitrary? If it were an event, it would be trivial for multiple interested parties to be notified. If it's a delegate, you would have to chain the receivers together. Imagine a scenario where an Editor is also a Widget, it would be easy to have the framework automatically cancel and re-enable subscriptions if the Widget were removed from the document. http://gwt-code-reviews.appspot.com/866801/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
Re: [gwt-contrib] Makes IsWidget a first class concept, and makes it convenient to (issue864801)
Makes IsWidget a first class concept, and makes it convenient to use with all standard panels. This lets us get rid of Activity.Display. I think this is great. Is there anyway it could be taken further and IsXxx interfaces added for all widgets? I ask because I've been doing this on my own, as I use each widget, and it is somewhat tedious: http://github.com/stephenh/gwt-mpv/tree/master/user/src/main/java/org/gwtmpv/widgets But I put up with it because if each widget has an interface, I can code generate the entire Xxx.Display/XxxView from the xxx.ui.xml file and get rid of a slew of MVP boilerplate (I haven't hand-written a Display interface, view class, MyUiBinder inner class, or @UiField in months). Here is a basic writeup: http://www.gwtmpv.org/viewgeneration.html Plus, as I think was mentioned in one of the MVP presentations, I go ahead and provide StubXxx implementations of each widget, and code generate a StubXxxView that has each ui:field set to an instance of its corresponding stub widget, making view testing simple as well. - Stephen -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
Re: [gwt-contrib] PopupPanel rolldown animation is only accesable with incubator!?
We didn't want to expose a setAnimation() method in PopupPanel until we had time to work out an API that would work for all widgets. FWIW, I also have a PopupPanel subclass with a custom animation (fading lightbox) squatting in the c.g.g.user.client.ui package to get around this restriction. I'm fine with the squatting highlighting the fact that I'm using a non-public API, but I just thought I'd mention I've hit this custom-animations use case as well. - Stephen -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] How to detect HTML5 support?
I'm working on a HTML5 widget library that will emulate html5 when it is not supported by the browser (html5 form elements etc.) I don't know what is the best approach to take advantage of deferred binding to use the native/emulated classes. Is it better to extend the user agent to be able to detect Chrome7/ Safari etc. (CSS3 transforms) or is it better to introduce a new property? -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Adds a -strict option to the GWT compiler. If this option is specified, (issue853801)
http://gwt-code-reviews.appspot.com/853801/diff/4001/5008 File user/test/com/google/gwt/dev/StrictModeTest.java (right): http://gwt-code-reviews.appspot.com/853801/diff/4001/5008#newcode45 user/test/com/google/gwt/dev/StrictModeTest.java:45: private File outDir; The comment needs updating. I started to drop support for the temp dir, but it's still needed for the successful compiles. The output will go somewhere. http://gwt-code-reviews.appspot.com/853801/diff/4001/5008#newcode54 user/test/com/google/gwt/dev/StrictModeTest.java:54: fail(Should have compiled successfully); Yes, I'll change it that way. http://gwt-code-reviews.appspot.com/853801/diff/4001/5008#newcode66 user/test/com/google/gwt/dev/StrictModeTest.java:66: } catch (UnableToCompleteException e) { Sounds good. http://gwt-code-reviews.appspot.com/853801/diff/4001/5008#newcode167 user/test/com/google/gwt/dev/StrictModeTest.java:167: private void precompile(boolean good) throws UnableToCompleteException { Nice trick! Booleans are hard to read because it's impossible to remember what true and false refer to. http://gwt-code-reviews.appspot.com/853801/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
Re: [gwt-contrib] GWT Compiler or widget.gwt.xml file optimisation for 2.1 ?
As far as the -Dgwt.speedtracerlog option goes, the most recent milestone should have the feature I had in mind for diagnosing further. On Mon, Sep 13, 2010 at 9:11 AM, David david.no...@gmail.com wrote: Hi Eric, It would be acceptable for testing purpose only. releases to production have to be official versions. But it would make it soo much easier to already start using features that should normally be available by the time we go to production. David On Mon, Sep 13, 2010 at 3:02 PM, Joel Webber j...@google.com wrote: This is slightly off-topic, but I'm curious -- would having a formal nightly build actually be acceptable for use within your locked-down environment? And would the same go for offline dev-mode plugin installers? Le 12 septembre 2010 08:43, David david.no...@gmail.com a écrit : Eric, No I'm not using the draftCompile option, I will see if it improves even more. And yes, after removing the incubator from my project the whole project compile process only took 1/3rd of the time (7 minutes instead of 22 minutes). I guess the main reason is probably because we had to import both gen2 and widgetideas in. I am not able/allowed to get the trunk downloaded due to corporate policies. That's why in the past I asked if the GWT team did not want to consider daily builds/dev builds. So I will have to wait until 2.1 is out. And when it is, I guess I will again have to ask for non installers for the IE/Firefox/Chrome plugins that do not mandate an internet connection :-S. So maybe for the poor corporate developers in very secure environments that fight to get GWT accepted: think about us! ;-) David On Fri, Sep 10, 2010 at 8:48 PM, Eric Ayers zun...@google.com wrote: Hi David, Are you using the -draftCompile option? The reason I ask is that using this option cuts out the optimization steps to make the compile run faster. The end result i that running the JDT compiler takes dominates the compile time when using it. Everything on the sourcepath is compiled at least once to build the TypeOracle. Every class that is actually used is run through the JDT compile library twice. So, removing even unreferenced files from the source path should have a significant impact. We are considering all kinds of performance improvements, but keeping modules small and independent and referencing the smallest number needed is going to always give the best compilation performance. In the future, if you need one widget from a module that is full of unreferenced code, you could define a custom one that includes just the paths you need to minimize compile time. If you like, run your build with a tip of trunk GWT and add -Dgwt.speedtracerlog=/tmp/speedtracer.html both with and without the incubator dependencies and I can tell more about why your compile time improved so dramatically. -Eric. On Fri, Sep 10, 2010 at 11:02 AM, stuckagain david.no...@gmail.com wrote: Hi, I managed to finally factor our the incubator widgets from my medium sized application and now that I have no dependencies left I saw the compile time decrease with 66%. Which is an amazing. We were only using 2 widgets yet this library had such a huge impact. Are there any plans to improve on this in the future ? David -- http://groups.google.com/group/Google-Web-Toolkit-Contributors -- Eric Z. Ayers Google Web Toolkit, Atlanta, GA USA -- http://groups.google.com/group/Google-Web-Toolkit-Contributors -- http://groups.google.com/group/Google-Web-Toolkit-Contributors -- http://groups.google.com/group/Google-Web-Toolkit-Contributors -- http://groups.google.com/group/Google-Web-Toolkit-Contributors -- Eric Z. Ayers Google Web Toolkit, Atlanta, GA USA -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
Re: [gwt-contrib] GWT Compiler or widget.gwt.xml file optimisation for 2.1 ?
On Mon, Sep 13, 2010 at 9:11 AM, David david.no...@gmail.com wrote: It would be acceptable for testing purpose only. releases to production have to be official versions. But it would make it soo much easier to already start using features that should normally be available by the time we go to production. So if the issue is simply having network connectivity, couldn't you just checkout GWT on your own machine, build it there, and bring in the zip the same way as if there were a nightly build? It would have just as much testing as the nightly build would. I am not saying we shouldn't do a nightly build anyway (it is just the opportunity cost of what else we could be doing with that effort), but I am not sure why not having it means you can't use GWT trunk for the same testing purposes already. -- John A. Tamplin Software Engineer (GWT), Google -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Introduces Widget.LoadingDelegate, to allow a widget owner to act when (issue866801)
John L concurs off line, I'll make the change. On Mon, Sep 13, 2010 at 8:33 AM, b...@google.com wrote: Would this be better as an event type instead of a delegate? I don't think so. I think this is much more in the nature of one owner, one widget. Am I being arbitrary? If it were an event, it would be trivial for multiple interested parties to be notified. If it's a delegate, you would have to chain the receivers together. Imagine a scenario where an Editor is also a Widget, it would be easy to have the framework automatically cancel and re-enable subscriptions if the Widget were removed from the document. http://gwt-code-reviews.appspot.com/866801/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Extract violations from being a field in sideEffects to a top-level field. Removed the handling ... (issue846802)
LGTM http://gwt-code-reviews.appspot.com/846802/diff/1/8 File user/src/com/google/gwt/requestfactory/server/JsonRequestProcessor.java (right): http://gwt-code-reviews.appspot.com/846802/diff/1/8#newcode672 user/src/com/google/gwt/requestfactory/server/JsonRequestProcessor.java:672: envelop.put(violations, violationsAsJson); If the RequestData.SIDE_EFFECTS_TOKEN constant is no longer used, please delete it. http://gwt-code-reviews.appspot.com/846802/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Adds a -strict option to the GWT compiler. If this option is specified, (issue853801)
http://gwt-code-reviews.appspot.com/853801/diff/4001/5008 File user/test/com/google/gwt/dev/StrictModeTest.java (right): http://gwt-code-reviews.appspot.com/853801/diff/4001/5008#newcode45 user/test/com/google/gwt/dev/StrictModeTest.java:45: private File outDir; Strange, I don't see outDir referenced by the Options. It's only being used in setUp/tearDown. Are you sure you need the out dir since you're only calling Precompile, and never trying to link? http://gwt-code-reviews.appspot.com/853801/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Comments / cleanup for RPC generators (issue862801)
http://gwt-code-reviews.appspot.com/862801/diff/2001/3004 File user/src/com/google/gwt/user/rebind/rpc/FieldSerializerCreator.java (right): http://gwt-code-reviews.appspot.com/862801/diff/2001/3004#newcode255 user/src/com/google/gwt/user/rebind/rpc/FieldSerializerCreator.java:255: * return new com.google.gwt.sample.client.Student[rank]; Funny enough, this was a copy/paste of actual generated code. The generated code is using the wrong terminology. Will fix before committing. http://gwt-code-reviews.appspot.com/862801/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Adds a -strict option to the GWT compiler. If this option is specified, (issue853801)
http://gwt-code-reviews.appspot.com/853801/diff/4001/5008 File user/test/com/google/gwt/dev/StrictModeTest.java (right): http://gwt-code-reviews.appspot.com/853801/diff/4001/5008#newcode45 user/test/com/google/gwt/dev/StrictModeTest.java:45: private File outDir; You're right. I'll delete it. I had forgotten I changed it just to do a precompile. http://gwt-code-reviews.appspot.com/853801/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Fix the logging sample - somehow the client and shared directories got deleted. Also a minor fix... (issue842802)
LGTM http://gwt-code-reviews.appspot.com/842802/diff/1/8 File user/src/com/google/gwt/logging/impl/DevModeLoggingFixes.java (right): http://gwt-code-reviews.appspot.com/842802/diff/1/8#newcode37 user/src/com/google/gwt/logging/impl/DevModeLoggingFixes.java:37: public class DevModeLoggingFixes { Add a JavaDoc for this class http://gwt-code-reviews.appspot.com/842802/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Adds a -strict option to the GWT compiler. If this option is specified, (issue853801)
LGTM -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Extract violations from being a field in sideEffects to a top-level field. Removed the handling ... (issue846802)
RequestData.SIDE_EFFECTS_TOKEN is still being used at one place. Commiting the change. On Mon, Sep 13, 2010 at 10:03 AM, rj...@google.com wrote: LGTM http://gwt-code-reviews.appspot.com/846802/diff/1/8 File user/src/com/google/gwt/requestfactory/server/JsonRequestProcessor.java (right): http://gwt-code-reviews.appspot.com/846802/diff/1/8#newcode672 user/src/com/google/gwt/requestfactory/server/JsonRequestProcessor.java:672: envelop.put(violations, violationsAsJson); If the RequestData.SIDE_EFFECTS_TOKEN constant is no longer used, please delete it. http://gwt-code-reviews.appspot.com/846802/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Add stack trace display to the rest of the log handlers in dev mode (issue861801)
IMO, showStackTraces in the formatter ctors should always be true. If there's a stack trace, I always want to see it, even if it is obfuscated. http://gwt-code-reviews.appspot.com/861801/diff/1/6 File user/src/com/google/gwt/logging/client/HtmlLogFormatter.java (right): http://gwt-code-reviews.appspot.com/861801/diff/1/6#newcode98 user/src/com/google/gwt/logging/client/HtmlLogFormatter.java:98: text = text.replaceAll(lt;brgt;, br); This potentially has the side effect of replacing lt;brgt; in user output with br, which would be unexpected. http://gwt-code-reviews.appspot.com/861801/diff/1/9 File user/src/com/google/gwt/logging/impl/FormatterImpl.java (right): http://gwt-code-reviews.appspot.com/861801/diff/1/9#newcode31 user/src/com/google/gwt/logging/impl/FormatterImpl.java:31: protected String getRecordInfo(LogRecord event, String newline) { Add a JavaDoc to either indicate what the defined format is of the returned string, or indicate that the format is subject to change in the future. http://gwt-code-reviews.appspot.com/861801/diff/1/9#newcode45 user/src/com/google/gwt/logging/impl/FormatterImpl.java:45: // should be moved there and not duplicated here. I think it would be good to rephrase the comment as a TODO http://gwt-code-reviews.appspot.com/861801/diff/1/9#newcode52 user/src/com/google/gwt/logging/impl/FormatterImpl.java:52: return ; We should still print a stack trace in production mode, even if it is obfuscated. The app may have been compiled with -style PRETTY or DETAILED, and perhaps with compiler.emulatedStack enabled, making the stack traces quite useful. If you like, add a TODO to use server side resymbolization to provide de-obfuscated stack traces to client side code. http://gwt-code-reviews.appspot.com/861801/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Makes IsWidget a first class concept, and makes it convenient to (issue864801)
http://gwt-code-reviews.appspot.com/864801/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Makes IsWidget a first class concept, and makes it convenient to (issue864801)
Thanks, all. Amazing weekend. Submitting this now (I hope). http://gwt-code-reviews.appspot.com/864801/diff/29001/30010 File user/src/com/google/gwt/user/client/ui/AcceptsOneWidget.java (right): http://gwt-code-reviews.appspot.com/864801/diff/29001/30010#newcode23 user/src/com/google/gwt/user/client/ui/AcceptsOneWidget.java:23: void setWidget(IsWidget w); On 2010/09/13 12:00:39, bobv wrote: JavaDoc? Done. http://gwt-code-reviews.appspot.com/864801/diff/29001/30025 File user/src/com/google/gwt/user/client/ui/TabLayoutPanel.java (right): http://gwt-code-reviews.appspot.com/864801/diff/29001/30025#newcode195 user/src/com/google/gwt/user/client/ui/TabLayoutPanel.java:195: public void add(IsWidget w, String text) { On 2010/09/13 08:06:37, tbroyer wrote: Javadoc? Done. http://gwt-code-reviews.appspot.com/864801/diff/29001/30028 File user/src/com/google/gwt/user/client/ui/Widget.java (right): http://gwt-code-reviews.appspot.com/864801/diff/29001/30028#newcode37 user/src/com/google/gwt/user/client/ui/Widget.java:37: * This convenience method makes a null safe call to On 2010/09/13 12:00:39, bobv wrote: null-safe Done. http://gwt-code-reviews.appspot.com/864801/diff/29001/30028#newcode40 user/src/com/google/gwt/user/client/ui/Widget.java:40: * @return the widget aspect, or null if w is null On 2010/09/13 12:00:39, bobv wrote: codenull/code Done. http://gwt-code-reviews.appspot.com/864801/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Add the option to use JSON rather than GWT RPC in remote logging (issue830802)
http://gwt-code-reviews.appspot.com/830802/diff/3001/4002 File user/src/com/google/gwt/logging/client/JsonLogRecordClientUtil.java (right): http://gwt-code-reviews.appspot.com/830802/diff/3001/4002#newcode27 user/src/com/google/gwt/logging/client/JsonLogRecordClientUtil.java:27: * A set of functions to convert JSON strings into SerializableLogRecords. Swap 1st javadoc sentence with JsonLogRecordServerUtil.java http://gwt-code-reviews.appspot.com/830802/diff/3001/4003 File user/src/com/google/gwt/logging/server/JsonLogRecordServerUtil.java (right): http://gwt-code-reviews.appspot.com/830802/diff/3001/4003#newcode30 user/src/com/google/gwt/logging/server/JsonLogRecordServerUtil.java:30: * format. The corresponding functions to convert them back are in I think the 1st sentence of the javadoc on this and the corresponding client class need to be swapped. http://gwt-code-reviews.appspot.com/830802/diff/3001/4003#newcode33 user/src/com/google/gwt/logging/server/JsonLogRecordServerUtil.java:33: public class JsonLogRecordServerUtil { It might be useful to leave out the 'Server' (and 'Client') bits in the classname, under the assumption that these two utility classes might be used in reverse at some point, e.g. in a client app which is able to pull down a bunch of log records from the server and display them. http://gwt-code-reviews.appspot.com/830802/diff/3001/4005 File user/src/com/google/gwt/logging/shared/SerializableStackTraceElement.java (right): http://gwt-code-reviews.appspot.com/830802/diff/3001/4005#newcode24 user/src/com/google/gwt/logging/shared/SerializableStackTraceElement.java:24: public class SerializableStackTraceElement implements IsSerializable { This class should no longer be needed now that we have svn/trunk/user/super/com/google/gwt/emul/java/lang/StackTraceElement.java http://gwt-code-reviews.appspot.com/830802/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] [google-web-toolkit] r8758 committed - Public: Restore the samples/validation classes/marker...
Revision: 8758 Author: ncha...@google.com Date: Sat Sep 11 15:57:40 2010 Log: Public: Restore the samples/validation classes/marker Its needed by Eclipse or it throws an error because it can't find the classes/ directory where it is supposed to dump compiled files. Review at http://gwt-code-reviews.appspot.com/856802 http://code.google.com/p/google-web-toolkit/source/detail?r=8758 Added: /trunk/samples/validation/war/WEB-INF/classes /trunk/samples/validation/war/WEB-INF/classes/marker -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] [google-web-toolkit] r8759 committed - Fixes typo in ResizeComposite.
Revision: 8759 Author: j...@google.com Date: Mon Sep 13 05:11:29 2010 Log: Fixes typo in ResizeComposite. http://code.google.com/p/google-web-toolkit/source/detail?r=8759 Modified: /trunk/user/src/com/google/gwt/user/client/ui/ResizeComposite.java === --- /trunk/user/src/com/google/gwt/user/client/ui/ResizeComposite.java Wed Nov 4 07:47:35 2009 +++ /trunk/user/src/com/google/gwt/user/client/ui/ResizeComposite.java Mon Sep 13 05:11:29 2010 @@ -26,7 +26,7 @@ @Override protected void initWidget(Widget widget) { assert widget instanceof RequiresResize : - LayoutComposite requires that its wrapped widget implement HasLayout; + LayoutComposite requires that its wrapped widget implement RequiresResize; super.initWidget(widget); } -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] [google-web-toolkit] r8760 committed - Extract violations from being a field in sideEffects to a top-level fi...
Revision: 8760 Author: amitman...@google.com Date: Mon Sep 13 07:15:23 2010 Log: Extract violations from being a field in sideEffects to a top-level field. Removed the handling of violations from DeltaValuesStoreJsonImpl.onCommit method. Will do further cleanup once Receiver has a onViolations method. Patch by: amitmanjhi Review by: rjrjr, robertvawter Review at http://gwt-code-reviews.appspot.com/846802 http://code.google.com/p/google-web-toolkit/source/detail?r=8760 Modified: /trunk/user/src/com/google/gwt/requestfactory/client/impl/AbstractJsonListRequest.java /trunk/user/src/com/google/gwt/requestfactory/client/impl/AbstractJsonObjectRequest.java /trunk/user/src/com/google/gwt/requestfactory/client/impl/AbstractPrimitiveRequest.java /trunk/user/src/com/google/gwt/requestfactory/client/impl/AbstractRequest.java /trunk/user/src/com/google/gwt/requestfactory/client/impl/DeltaValueStoreJsonImpl.java /trunk/user/src/com/google/gwt/requestfactory/client/impl/JsonResults.java /trunk/user/src/com/google/gwt/requestfactory/server/JsonRequestProcessor.java /trunk/user/test/com/google/gwt/requestfactory/client/RequestFactoryTest.java === --- /trunk/user/src/com/google/gwt/requestfactory/client/impl/AbstractJsonListRequest.java Tue Sep 7 10:09:37 2010 +++ /trunk/user/src/com/google/gwt/requestfactory/client/impl/AbstractJsonListRequest.java Mon Sep 13 07:15:23 2010 @@ -52,6 +52,11 @@ @Override public void handleResult(Object jsoResult, SetSyncResult syncResults) { +// TODO (amitmanjhi): remove this check once Receiver has the onViolations method. +if (jsoResult == null) { + receiver.onSuccess(null, syncResults); + return; +} @SuppressWarnings(unchecked) JsArrayJavaScriptObject rawJsos = (JsArrayJavaScriptObject) jsoResult; === --- /trunk/user/src/com/google/gwt/requestfactory/client/impl/AbstractJsonObjectRequest.java Fri Sep 10 13:31:52 2010 +++ /trunk/user/src/com/google/gwt/requestfactory/client/impl/AbstractJsonObjectRequest.java Mon Sep 13 07:15:23 2010 @@ -46,6 +46,11 @@ @Override public void handleResult(Object result, SetSyncResult syncResults) { +// TODO (amitmanjhi): remove this check once Receiver has the onViolations method. +if (result == null) { + receiver.onSuccess(null, syncResults); + return; +} JavaScriptObject rawJso = (JavaScriptObject) result; ProxyJsoImpl jso = ProxyJsoImpl.create(rawJso, schema, requestFactory); === --- /trunk/user/src/com/google/gwt/requestfactory/client/impl/AbstractPrimitiveRequest.java Wed Aug 25 17:41:41 2010 +++ /trunk/user/src/com/google/gwt/requestfactory/client/impl/AbstractPrimitiveRequest.java Mon Sep 13 07:15:23 2010 @@ -40,6 +40,11 @@ @Override public void handleResult(Object result, SetSyncResult syncResults) { +// TODO (amitmanjhi): remove this check once Receiver has the onViolations method. +if (result == null) { + handlePrimitiveResult(null, syncResults); + return; +} handlePrimitiveResult(asString(result), syncResults); } === --- /trunk/user/src/com/google/gwt/requestfactory/client/impl/AbstractRequest.java Fri Sep 10 13:31:52 2010 +++ /trunk/user/src/com/google/gwt/requestfactory/client/impl/AbstractRequest.java Mon Sep 13 07:15:23 2010 @@ -16,14 +16,17 @@ package com.google.gwt.requestfactory.client.impl; import com.google.gwt.core.client.JavaScriptObject; +import com.google.gwt.core.client.JsArray; +import com.google.gwt.requestfactory.client.impl.DeltaValueStoreJsonImpl.ReturnRecord; +import com.google.gwt.requestfactory.shared.EntityProxy; import com.google.gwt.requestfactory.shared.Property; import com.google.gwt.requestfactory.shared.Receiver; -import com.google.gwt.requestfactory.shared.EntityProxy; import com.google.gwt.requestfactory.shared.RequestObject; import com.google.gwt.requestfactory.shared.SyncResult; import java.util.Collection; import java.util.Collections; +import java.util.HashMap; import java.util.HashSet; import java.util.Set; @@ -97,8 +100,41 @@ throw new RuntimeException(results.getException()); } processRelated(results.getRelated()); -handleResult(results.getResult(), -deltaValueStore.commit(results.getSideEffects())); + +// handle violations +JsArrayDeltaValueStoreJsonImpl.ReturnRecord violationsArray = results.getViolations(); +SetSyncResult syncResults = new HashSetSyncResult(); +if (violationsArray != null) { + int length = violationsArray.length(); + for (int i = 0; i length; i++) { +ReturnRecord violationRecord = violationsArray.get(i); +Long id = null; +if (violationRecord.hasFutureId()) { + id = Long.valueOf(violationRecord.getFutureId()); +} else { + id =
[gwt-contrib] Re: Fixes issue 5270 (issue839803)
LGTM. John, do you agree? http://gwt-code-reviews.appspot.com/839803/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] [google-web-toolkit] r8761 committed - Fix the logging sample - somehow the client and shared directories got...
Revision: 8761 Author: unn...@google.com Date: Mon Sep 13 08:42:16 2010 Log: Fix the logging sample - somehow the client and shared directories got deleted. Also a minor fix for devmode, so that LogRecords with no logger name set are handled gracefully Review at http://gwt-code-reviews.appspot.com/842802 Review by: fre...@google.com http://code.google.com/p/google-web-toolkit/source/detail?r=8761 Added: /trunk/samples/logexample/src/com/google/gwt/sample/logexample/server /trunk/samples/logexample/src/com/google/gwt/sample/logexample/server/MyServiceImpl.java /trunk/samples/logexample/src/com/google/gwt/sample/logexample/shared /trunk/samples/logexample/src/com/google/gwt/sample/logexample/shared/MyService.java /trunk/samples/logexample/src/com/google/gwt/sample/logexample/shared/MyServiceAsync.java /trunk/samples/logexample/src/com/google/gwt/sample/logexample/shared/SharedClass.java Modified: /trunk/samples/logexample/src/com/google/gwt/sample/logexample/client/OneLoggerController.java /trunk/samples/logexample/war/WEB-INF/web.xml /trunk/user/src/com/google/gwt/logging/impl/DevModeLoggingFixes.java === --- /dev/null +++ /trunk/samples/logexample/src/com/google/gwt/sample/logexample/server/MyServiceImpl.java Mon Sep 13 08:42:16 2010 @@ -0,0 +1,42 @@ +/* + * Copyright 2010 Google Inc. + * + * Licensed under the Apache License, Version 2.0 (the License); you may not + * use this file except in compliance with the License. You may obtain a copy of + * the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an AS IS BASIS, WITHOUT + * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the + * License for the specific language governing permissions and limitations under + * the License. + */ +package com.google.gwt.sample.logexample.server; + + +import com.google.gwt.sample.logexample.shared.MyService; +import com.google.gwt.sample.logexample.shared.SharedClass; +import com.google.gwt.user.server.rpc.RemoteServiceServlet; + +import java.util.logging.Logger; + +/** + * A simple servlet that responds to requests to log from the server, either + * directly, or by calling the shared logging library code. + */ +public class MyServiceImpl extends RemoteServiceServlet implements MyService { + + private static Logger logger = +Logger.getLogger(MyServiceImpl.class.getName()); + + public void doSomething() { +// Pretend that an error occured +logger.severe(MyServiceImpl.doSomething() has encountered a (pretend) error); + } + + public void doSomethingUsingSharedLibrary() { +SharedClass.doSomething(server); + } +} === --- /dev/null +++ /trunk/samples/logexample/src/com/google/gwt/sample/logexample/shared/MyService.java Mon Sep 13 08:42:16 2010 @@ -0,0 +1,29 @@ +/* + * Copyright 2010 Google Inc. + * + * Licensed under the Apache License, Version 2.0 (the License); you may not + * use this file except in compliance with the License. You may obtain a copy of + * the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an AS IS BASIS, WITHOUT + * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the + * License for the specific language governing permissions and limitations under + * the License. + */ + +package com.google.gwt.sample.logexample.shared; + +import com.google.gwt.user.client.rpc.RemoteService; +import com.google.gwt.user.client.rpc.RemoteServiceRelativePath; + +/** + * The client side stub for the RPC service. + */ +...@remoteservicerelativepath(my_service) +public interface MyService extends RemoteService { + void doSomething(); + void doSomethingUsingSharedLibrary(); +} === --- /dev/null +++ /trunk/samples/logexample/src/com/google/gwt/sample/logexample/shared/MyServiceAsync.java Mon Sep 13 08:42:16 2010 @@ -0,0 +1,27 @@ +/* + * Copyright 2010 Google Inc. + * + * Licensed under the Apache License, Version 2.0 (the License); you may not + * use this file except in compliance with the License. You may obtain a copy of + * the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an AS IS BASIS, WITHOUT + * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the + * License for the specific language governing permissions and limitations under + * the License. + */ + +package com.google.gwt.sample.logexample.shared; + +import com.google.gwt.user.client.rpc.AsyncCallback; + +/** + * The async counterpart of codeMyService/code. + */ +public
[gwt-contrib] Re: Fixes issue 5270 (issue839803)
On 2010/09/13 18:36:53, scottb wrote: LGTM. John, do you agree? LGTM http://gwt-code-reviews.appspot.com/839803/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Fixes https://jira.springsource.org/browse/ROO-1213 - Hide Property from public API. (issue842803)
Reviewers: amitmanjhi, Description: Fixes https://jira.springsource.org/browse/ROO-1213 - Hide Property from public API. Properties are now computed from the *Proxy classes and emitted into the generated *ProxyImpl classes. Server side code will infer what the properties should be by reflecting over the *Proxy classes looking for bean-like property methods. Review by: amitman...@google.com Please review this at http://gwt-code-reviews.appspot.com/842803/show Affected files: M samples/dynatablerf/src/com/google/gwt/sample/dynatablerf/shared/AddressProxy.java M samples/dynatablerf/src/com/google/gwt/sample/dynatablerf/shared/PersonProxy.java M user/src/com/google/gwt/app/place/PropertyColumn.java M user/src/com/google/gwt/app/rebind/EditorSupportGenerator.java M user/src/com/google/gwt/requestfactory/client/impl/AbstractRequest.java M user/src/com/google/gwt/requestfactory/client/impl/DeltaValueStoreJsonImpl.java A user/src/com/google/gwt/requestfactory/client/impl/Property.java M user/src/com/google/gwt/requestfactory/client/impl/ProxyImpl.java M user/src/com/google/gwt/requestfactory/client/impl/ProxyJsoImpl.java M user/src/com/google/gwt/requestfactory/client/impl/ProxySchema.java M user/src/com/google/gwt/requestfactory/rebind/RequestFactoryGenerator.java M user/src/com/google/gwt/requestfactory/server/JsonRequestProcessor.java M user/src/com/google/gwt/requestfactory/shared/EntityProxy.java M user/src/com/google/gwt/requestfactory/shared/EnumProperty.java M user/src/com/google/gwt/requestfactory/shared/Id.java D user/src/com/google/gwt/requestfactory/shared/Property.java M user/src/com/google/gwt/requestfactory/shared/PropertyReference.java M user/src/com/google/gwt/requestfactory/shared/ProxyListRequest.java M user/src/com/google/gwt/requestfactory/shared/ProxyRequest.java M user/src/com/google/gwt/requestfactory/shared/UserInformationProxy.java M user/src/com/google/gwt/requestfactory/shared/Version.java M user/test/com/google/gwt/editor/rebind/model/EditorModelTest.java M user/test/com/google/gwt/requestfactory/client/impl/DeltaValueStoreJsonImplTest.java M user/test/com/google/gwt/requestfactory/client/impl/ProxyJsoImplTest.java M user/test/com/google/gwt/requestfactory/client/impl/SimpleBazProxyImpl.java A user/test/com/google/gwt/requestfactory/client/impl/SimpleFooProxyProperties.java M user/test/com/google/gwt/requestfactory/shared/SimpleBarProxy.java M user/test/com/google/gwt/requestfactory/shared/SimpleFooProxy.java -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Improve locale handling for default scripts and languages where some (issue851802)
LGTM http://gwt-code-reviews.appspot.com/851802/diff/19/3013 File user/test/com/google/gwt/i18n/I18NTest_pa_Arab.gwt.xml (right): http://gwt-code-reviews.appspot.com/851802/diff/19/3013#newcode22 user/test/com/google/gwt/i18n/I18NTest_pa_Arab.gwt.xml:22: set-property name = locale value = pa_Arab/ Should the spacing between ='s match here (and in others)? http://gwt-code-reviews.appspot.com/851802/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Demonstrate client-side Editor errors. (issue857802)
http://gwt-code-reviews.appspot.com/857802/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Improve locale handling for default scripts and languages where some (issue851802)
Thanks for the review. http://gwt-code-reviews.appspot.com/851802/diff/19/3013 File user/test/com/google/gwt/i18n/I18NTest_pa_Arab.gwt.xml (right): http://gwt-code-reviews.appspot.com/851802/diff/19/3013#newcode22 user/test/com/google/gwt/i18n/I18NTest_pa_Arab.gwt.xml:22: set-property name = locale value = pa_Arab/ On 2010/09/13 19:14:47, pdr wrote: Should the spacing between ='s match here (and in others)? I will fix the ones in this patch, but not make all the others consistent with this. http://gwt-code-reviews.appspot.com/851802/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Demonstrate client-side Editor errors. (issue857802)
LGTM On Mon, Sep 13, 2010 at 12:26 PM, b...@google.com wrote: http://gwt-code-reviews.appspot.com/857802/diff/3001/4001 File samples/dynatablerf/src/com/google/gwt/sample/dynatablerf/client/PersonEditorWorkflow.java (right): http://gwt-code-reviews.appspot.com/857802/diff/3001/4001#newcode109 samples/dynatablerf/src/com/google/gwt/sample/dynatablerf/client/PersonEditorWorkflow.java:109: if (!editorDriver.getUnconsumedEditorErrors().isEmpty()) { On 2010/09/13 17:36:08, rjrjr wrote: Add a hasErrors() method for convenience? Also, naming nit: wonder if it's worth drawing so much attention to the Unconumed thing. It's not like you give any access to the consumed ones, right? So just call it getErrors, and javadoc that consumed ones have been...consumed? Done. http://gwt-code-reviews.appspot.com/857802/diff/3001/4019 File user/src/com/google/gwt/editor/client/ValueAwareEditor.java (right): http://gwt-code-reviews.appspot.com/857802/diff/3001/4019#newcode40 user/src/com/google/gwt/editor/client/ValueAwareEditor.java:40: * peered with On 2010/09/13 17:36:08, rjrjr wrote: Called by the EditorDriver to set the value on the object the Editor is peered with. (provide access to sounds like a getter) Done. http://gwt-code-reviews.appspot.com/857802/diff/3001/4023 File user/src/com/google/gwt/editor/client/impl/AbstractEditorDelegate.java (right): http://gwt-code-reviews.appspot.com/857802/diff/3001/4023#newcode78 user/src/com/google/gwt/editor/client/impl/AbstractEditorDelegate.java:78: private static class SimpleError implements EditorError { On 2010/09/13 17:36:08, rjrjr wrote: Should be in its own file, no? Done. http://gwt-code-reviews.appspot.com/857802/diff/3001/4028 File user/src/com/google/gwt/editor/client/ui/EditorErrorPanel.java (right): http://gwt-code-reviews.appspot.com/857802/diff/3001/4028#newcode82 user/src/com/google/gwt/editor/client/ui/EditorErrorPanel.java:82: if (widget instanceof Editor?) { On 2010/09/13 17:36:08, rjrjr wrote: Do you really need the ? on instanceof checks? It's not like it means anything. I get raw type warnings if I don't. http://gwt-code-reviews.appspot.com/857802/diff/3001/4028#newcode112 user/src/com/google/gwt/editor/client/ui/EditorErrorPanel.java:112: errorLabel.getStyle().setDisplay(Display.INLINE_BLOCK); On 2010/09/13 17:36:08, rjrjr wrote: In JS we would do display=. Does our enum have a similar NONE value, to allow the default display behavior? This panel is pretty terrible as a bit of actual UI kit and will need to be revisited anyway before a GA release. http://gwt-code-reviews.appspot.com/857802/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] [google-web-toolkit] r8762 committed - Comments / cleanup for RPC generators....
Revision: 8762 Author: sco...@google.com Date: Mon Sep 13 09:08:54 2010 Log: Comments / cleanup for RPC generators. http://gwt-code-reviews.appspot.com/862801/show Suggested by: bobv Review by: bobv http://code.google.com/p/google-web-toolkit/source/detail?r=8762 Modified: /trunk/dev/core/src/com/google/gwt/dev/javac/StandardGeneratorContext.java /trunk/dev/core/src/com/google/gwt/dev/jdt/WebModeCompilerFrontEnd.java /trunk/dev/core/test/com/google/gwt/dev/shell/StandardGeneratorContextTest.java /trunk/user/src/com/google/gwt/user/rebind/rpc/FieldSerializerCreator.java /trunk/user/src/com/google/gwt/user/rebind/rpc/TypeSerializerCreator.java === --- /trunk/dev/core/src/com/google/gwt/dev/javac/StandardGeneratorContext.java Thu Sep 9 08:24:17 2010 +++ /trunk/dev/core/src/com/google/gwt/dev/javac/StandardGeneratorContext.java Mon Sep 13 09:08:54 2010 @@ -328,9 +328,7 @@ * * @return any newly generated artifacts since the last call */ - public final ArtifactSet finish(TreeLogger logger) - throws UnableToCompleteException { - + public final ArtifactSet finish(TreeLogger logger) { abortUncommittedResources(logger); // Process pending generated types. @@ -361,16 +359,6 @@ compilationState.addGeneratedCompilationUnits(logger, committedGeneratedCups); } - - // Make sure all generated types can be found in TypeOracle. - TypeOracle typeOracle = getTypeOracle(); - for (String genTypeName : genTypeNames) { -if (typeOracle.findType(genTypeName) == null) { - String msg = Unable to find recently-generated type ' + genTypeName; - logger.log(TreeLogger.ERROR, msg, null); - throw new UnableToCompleteException(); -} - } return newlyGeneratedArtifacts; } finally { === --- /trunk/dev/core/src/com/google/gwt/dev/jdt/WebModeCompilerFrontEnd.java Wed Sep 8 09:04:51 2010 +++ /trunk/dev/core/src/com/google/gwt/dev/jdt/WebModeCompilerFrontEnd.java Mon Sep 13 09:08:54 2010 @@ -136,11 +136,7 @@ } if (doFinish) { - try { -rebindPermOracle.getGeneratorContext().finish(logger); - } catch (UnableToCompleteException e) { -throw new RuntimeException(Unable to commit generated files, e); - } + rebindPermOracle.getGeneratorContext().finish(logger); } // Sanity check all rebind answers. === --- /trunk/dev/core/test/com/google/gwt/dev/shell/StandardGeneratorContextTest.java Thu Sep 9 08:24:17 2010 +++ /trunk/dev/core/test/com/google/gwt/dev/shell/StandardGeneratorContextTest.java Mon Sep 13 09:08:54 2010 @@ -244,11 +244,7 @@ testTryCreateResource_commitNotCalled(); // Now call finish() again to make sure nothing blows up. -try { - genCtx.finish(mockLogger); -} catch (UnableToCompleteException e) { - fail(finish() failed; it should support safely being called any number of times); -} +genCtx.finish(mockLogger); } public void testTryCreateResource_normalCompletionWithoutSubDir() === --- /trunk/user/src/com/google/gwt/user/rebind/rpc/FieldSerializerCreator.java Fri Sep 10 09:02:53 2010 +++ /trunk/user/src/com/google/gwt/user/rebind/rpc/FieldSerializerCreator.java Mon Sep 13 09:08:54 2010 @@ -144,7 +144,7 @@ sb.append(new ); sb.append(array.getLeafType().getQualifiedSourceName()); -sb.append([rank]); +sb.append([size]); for (int i = 0; i array.getRank() - 1; ++i) { sb.append([]); } @@ -225,6 +225,49 @@ } } + /** + * Writes an instantiate method. Examples: + * + * h2Class/h2 + * + * pre + * public static com.google.gwt.sample.client.Student instantiate( + * SerializationStreamReader streamReader) throws SerializationException { + * return new com.google.gwt.sample.client.Student(); + * } + * /pre + * + * h2Class with private ctor/h2 + * + * pre + * public static native com.google.gwt.sample.client.Student instantiate( + * SerializationStreamReader streamReader) throws SerializationException /*-{ + * return @com.google.gwt.sample.client.Student::new()(); + * }-#42;/; + * /pre + * + * h2Array/h2 + * + * pre + * public static com.google.gwt.sample.client.Student[] instantiate( + * SerializationStreamReader streamReader) throws SerializationException { + * int size = streamReader.readInt(); + * return new com.google.gwt.sample.client.Student[size]; + * } + * /pre + * + * h2Enum/h2 + * + * pre + * public static com.google.gwt.sample.client.Role instantiate( + * SerializationStreamReader streamReader) throws SerializationException { + * int ordinal = streamReader.readInt(); + * com.google.gwt.sample.client.Role[] values = com.google.gwt.sample.client.Role.values(); +
[gwt-contrib] Re: Refactoring the Showcase sample to use standards mode, and make use of LayoutPanels. The new Sho... (issue837801)
LGTM, assuming the RTL CSS question is answered. http://gwt-code-reviews.appspot.com/837801/diff/1/2 File samples/showcase/src/com/google/gwt/i18n/client/LocalizableResource.properties (right): http://gwt-code-reviews.appspot.com/837801/diff/1/2#newcode1 samples/showcase/src/com/google/gwt/i18n/client/LocalizableResource.properties:1: mainMenuTitle = GWT Examples What is the order of this file? It seems kind of haphazard. I know this isn't part of this change, but I think these should all be in annotations in the associated interfaces instead of a separate properties file. That allows you to include additional information, such as the description or meanings, and you can then also take advantage of things like key generation to avoid potential name conflicts (important since you are putting all these translations on LocalizableResource). It also seems strange to combine most of the translations into LocalizableResource*.properties, but still have other ones (though I suppose that makes it easier to include just the relevant snippet in the example code). http://gwt-code-reviews.appspot.com/837801/diff/1/70 File samples/showcase/src/com/google/gwt/sample/showcase/generator/ShowcaseGenerator.java (right): http://gwt-code-reviews.appspot.com/837801/diff/1/70#newcode107 samples/showcase/src/com/google/gwt/sample/showcase/generator/ShowcaseGenerator.java:107: String[] themes = new String[]{standard}; Is the formatting right here? http://gwt-code-reviews.appspot.com/837801/diff/1/76 File samples/showcase/src/com/google/gwt/sample/showcase/public/standard/Showcase_rtl.css (left): http://gwt-code-reviews.appspot.com/837801/diff/1/76#oldcode2 samples/showcase/src/com/google/gwt/sample/showcase/public/standard/Showcase_rtl.css:2: * Applied to the main layout of the page. Where did the RTL CSS go? http://gwt-code-reviews.appspot.com/837801/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Refactoring the Showcase sample to use standards mode, and make use of LayoutPanels. The new Sho... (issue837801)
http://gwt-code-reviews.appspot.com/837801/diff/1/2 File samples/showcase/src/com/google/gwt/i18n/client/LocalizableResource.properties (right): http://gwt-code-reviews.appspot.com/837801/diff/1/2#newcode1 samples/showcase/src/com/google/gwt/i18n/client/LocalizableResource.properties:1: mainMenuTitle = GWT Examples The top set of properties are used by the Application in general. Everything that starts with cw is used by an example. At the very bottom are the properties that need official translations. You correct that the example translations are in seperate .properties files so that we can include them in the examples easily. http://gwt-code-reviews.appspot.com/837801/diff/1/70 File samples/showcase/src/com/google/gwt/sample/showcase/generator/ShowcaseGenerator.java (right): http://gwt-code-reviews.appspot.com/837801/diff/1/70#newcode107 samples/showcase/src/com/google/gwt/sample/showcase/generator/ShowcaseGenerator.java:107: String[] themes = new String[]{standard}; I think so. I'll look for warnings before submitting. http://gwt-code-reviews.appspot.com/837801/diff/1/76 File samples/showcase/src/com/google/gwt/sample/showcase/public/standard/Showcase_rtl.css (left): http://gwt-code-reviews.appspot.com/837801/diff/1/76#oldcode2 samples/showcase/src/com/google/gwt/sample/showcase/public/standard/Showcase_rtl.css:2: * Applied to the main layout of the page. Showcase.css is now included as a CssResource, which automatically converts to RTL mode! We don't need a separate file anymore. I tested carefully in RTL mode. Everything looks correct that I can see. http://gwt-code-reviews.appspot.com/837801/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Add stack trace display to the rest of the log handlers in dev mode (issue861801)
http://gwt-code-reviews.appspot.com/861801/diff/1/6 File user/src/com/google/gwt/logging/client/HtmlLogFormatter.java (right): http://gwt-code-reviews.appspot.com/861801/diff/1/6#newcode98 user/src/com/google/gwt/logging/client/HtmlLogFormatter.java:98: text = text.replaceAll(lt;brgt;, br); On 2010/09/13 18:05:31, fredsa wrote: This potentially has the side effect of replacing lt;brgt; in user output with br, which would be unexpected. Good call - changed http://gwt-code-reviews.appspot.com/861801/diff/1/9 File user/src/com/google/gwt/logging/impl/FormatterImpl.java (right): http://gwt-code-reviews.appspot.com/861801/diff/1/9#newcode31 user/src/com/google/gwt/logging/impl/FormatterImpl.java:31: protected String getRecordInfo(LogRecord event, String newline) { On 2010/09/13 18:05:31, fredsa wrote: Add a JavaDoc to either indicate what the defined format is of the returned string, or indicate that the format is subject to change in the future. Done. http://gwt-code-reviews.appspot.com/861801/diff/1/9#newcode45 user/src/com/google/gwt/logging/impl/FormatterImpl.java:45: // should be moved there and not duplicated here. On 2010/09/13 18:05:31, fredsa wrote: I think it would be good to rephrase the comment as a TODO Done. http://gwt-code-reviews.appspot.com/861801/diff/1/9#newcode52 user/src/com/google/gwt/logging/impl/FormatterImpl.java:52: return ; On 2010/09/13 18:05:31, fredsa wrote: We should still print a stack trace in production mode, even if it is obfuscated. The app may have been compiled with -style PRETTY or DETAILED, and perhaps with compiler.emulatedStack enabled, making the stack traces quite useful. If you like, add a TODO to use server side resymbolization to provide de-obfuscated stack traces to client side code. Done. http://gwt-code-reviews.appspot.com/861801/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Introduces Widget.LoadingDelegate, to allow a widget owner to act when (issue866801)
http://gwt-code-reviews.appspot.com/866801/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Introduces Widget.LoadingDelegate, to allow a widget owner to act when (issue866801)
Okay, now it's event based. Is good? http://gwt-code-reviews.appspot.com/866801/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Introduces AttachEvent, to allow a widget owner to act when (issue866801)
LGTM http://gwt-code-reviews.appspot.com/866801/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] [google-web-toolkit] r8765 committed - JClassType.getOverridableMethods() could return methods overridden as ...
Revision: 8765 Author: t.bro...@gmail.com Date: Mon Sep 13 10:29:13 2010 Log: JClassType.getOverridableMethods() could return methods overridden as 'final'. In AbstractMembers, final methods were simply ignored instead of being treated as possible overrides of already seenm ethods. A final method should trigger the removal of a method with the same signature from methodsBySignature. http://gwt-code-reviews.appspot.com/839803/show Fixes issues: 5270 Patch by: t.bro...@gmail.com Review by: me, jat http://code.google.com/p/google-web-toolkit/source/detail?r=8765 Modified: /trunk/dev/core/src/com/google/gwt/core/ext/typeinfo/AbstractMembers.java /trunk/dev/core/test/com/google/gwt/core/ext/typeinfo/JClassTypeTest.java /trunk/dev/core/test/com/google/gwt/core/ext/typeinfo/JEnumTypeTest.java /trunk/dev/core/test/com/google/gwt/core/ext/typeinfo/test/CB.java === --- /trunk/dev/core/src/com/google/gwt/core/ext/typeinfo/AbstractMembers.java Wed Apr 1 12:13:09 2009 +++ /trunk/dev/core/src/com/google/gwt/core/ext/typeinfo/AbstractMembers.java Mon Sep 13 10:29:13 2010 @@ -158,15 +158,22 @@ for (int i = 0; i declaredMethods.length; i++) { JMethod method = declaredMethods[i]; - // Ensure that this method is overridable. - if (method.isFinal() || method.isPrivate() || method.isStatic()) { -// We cannot override this method, so skip it. + // Ensure that this method is inherited. + if (method.isPrivate() || method.isStatic()) { +// We don't inherit this method, so skip it. continue; } - // We can override this method, so record it. String sig = computeInternalSignature(method); - methodsBySignature.put(sig, method); + + // Ensure that this method is overridable. + if (method.isFinal()) { +// We cannot override this method, but it might override another method, so remove any possibly overridden method. +methodsBySignature.remove(sig); + } else { +// We can override this method, so record it. +methodsBySignature.put(sig, method); + } } } === --- /trunk/dev/core/test/com/google/gwt/core/ext/typeinfo/JClassTypeTest.java Mon May 18 11:47:32 2009 +++ /trunk/dev/core/test/com/google/gwt/core/ext/typeinfo/JClassTypeTest.java Mon Sep 13 10:29:13 2010 @@ -201,6 +201,21 @@ // Check that we aren't including methods that aren't actually overridable // because they are final and/or private. { + assertMethodOverridable(typeOracle, + com.google.gwt.core.ext.typeinfo.test.IA, + com.google.gwt.core.ext.typeinfo.test.CA, foo, + noParams); + + assertMethodNotOverridable(typeOracle, + com.google.gwt.core.ext.typeinfo.test.CB, + com.google.gwt.core.ext.typeinfo.test.CB, foo, + noParams); + + assertMethodNotOverridable(typeOracle, + com.google.gwt.core.ext.typeinfo.test.CB, + com.google.gwt.core.ext.typeinfo.test.CC, foo, + noParams); + assertMethodNotOverridable(typeOracle, com.google.gwt.core.ext.typeinfo.test.CA, com.google.gwt.core.ext.typeinfo.test.CA, caNotOverridableFinal, === --- /trunk/dev/core/test/com/google/gwt/core/ext/typeinfo/JEnumTypeTest.java Tue Nov 10 08:12:08 2009 +++ /trunk/dev/core/test/com/google/gwt/core/ext/typeinfo/JEnumTypeTest.java Mon Sep 13 10:29:13 2010 @@ -148,12 +148,12 @@ assertEquals(A, annotation.value()); JClassType aClass = constants[0].getType().isClass(); JMethod[] methods = aClass.getOverridableMethods(); -assertEquals(7, methods.length); +assertEquals(4, methods.length); // TODO(jat): verify getExtra is from A's anonymous subclass of // EnumInterface when/if that is implemented. boolean found = false; for (JMethod method : methods) { - if (name.equals(method.getName())) { + if (getExtra.equals(method.getName())) { found = true; // TODO(jat); any other verification here? } === --- /trunk/dev/core/test/com/google/gwt/core/ext/typeinfo/test/CB.java Mon May 28 21:53:34 2007 +++ /trunk/dev/core/test/com/google/gwt/core/ext/typeinfo/test/CB.java Mon Sep 13 10:29:13 2010 @@ -1,7 +1,10 @@ package com.google.gwt.core.ext.typeinfo.test; public abstract class CB extends CA implements IB { - + + public final void foo() { + } + public abstract void ic(); - -} + +} -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] [google-web-toolkit] r8765 committed - JClassType.getOverridableMethods() could return methods overridden as ...
Revision: 8765 Author: t.bro...@gmail.com Date: Mon Sep 13 10:29:13 2010 Log: JClassType.getOverridableMethods() could return methods overridden as 'final'. In AbstractMembers, final methods were simply ignored instead of being treated as possible overrides of already seenm ethods. A final method should trigger the removal of a method with the same signature from methodsBySignature. http://gwt-code-reviews.appspot.com/839803/show Fixes issues: 5270 Patch by: t.bro...@gmail.com Review by: me, jat http://code.google.com/p/google-web-toolkit/source/detail?r=8765 Modified: /trunk/dev/core/src/com/google/gwt/core/ext/typeinfo/AbstractMembers.java /trunk/dev/core/test/com/google/gwt/core/ext/typeinfo/JClassTypeTest.java /trunk/dev/core/test/com/google/gwt/core/ext/typeinfo/JEnumTypeTest.java /trunk/dev/core/test/com/google/gwt/core/ext/typeinfo/test/CB.java === --- /trunk/dev/core/src/com/google/gwt/core/ext/typeinfo/AbstractMembers.java Wed Apr 1 12:13:09 2009 +++ /trunk/dev/core/src/com/google/gwt/core/ext/typeinfo/AbstractMembers.java Mon Sep 13 10:29:13 2010 @@ -158,15 +158,22 @@ for (int i = 0; i declaredMethods.length; i++) { JMethod method = declaredMethods[i]; - // Ensure that this method is overridable. - if (method.isFinal() || method.isPrivate() || method.isStatic()) { -// We cannot override this method, so skip it. + // Ensure that this method is inherited. + if (method.isPrivate() || method.isStatic()) { +// We don't inherit this method, so skip it. continue; } - // We can override this method, so record it. String sig = computeInternalSignature(method); - methodsBySignature.put(sig, method); + + // Ensure that this method is overridable. + if (method.isFinal()) { +// We cannot override this method, but it might override another method, so remove any possibly overridden method. +methodsBySignature.remove(sig); + } else { +// We can override this method, so record it. +methodsBySignature.put(sig, method); + } } } === --- /trunk/dev/core/test/com/google/gwt/core/ext/typeinfo/JClassTypeTest.java Mon May 18 11:47:32 2009 +++ /trunk/dev/core/test/com/google/gwt/core/ext/typeinfo/JClassTypeTest.java Mon Sep 13 10:29:13 2010 @@ -201,6 +201,21 @@ // Check that we aren't including methods that aren't actually overridable // because they are final and/or private. { + assertMethodOverridable(typeOracle, + com.google.gwt.core.ext.typeinfo.test.IA, + com.google.gwt.core.ext.typeinfo.test.CA, foo, + noParams); + + assertMethodNotOverridable(typeOracle, + com.google.gwt.core.ext.typeinfo.test.CB, + com.google.gwt.core.ext.typeinfo.test.CB, foo, + noParams); + + assertMethodNotOverridable(typeOracle, + com.google.gwt.core.ext.typeinfo.test.CB, + com.google.gwt.core.ext.typeinfo.test.CC, foo, + noParams); + assertMethodNotOverridable(typeOracle, com.google.gwt.core.ext.typeinfo.test.CA, com.google.gwt.core.ext.typeinfo.test.CA, caNotOverridableFinal, === --- /trunk/dev/core/test/com/google/gwt/core/ext/typeinfo/JEnumTypeTest.java Tue Nov 10 08:12:08 2009 +++ /trunk/dev/core/test/com/google/gwt/core/ext/typeinfo/JEnumTypeTest.java Mon Sep 13 10:29:13 2010 @@ -148,12 +148,12 @@ assertEquals(A, annotation.value()); JClassType aClass = constants[0].getType().isClass(); JMethod[] methods = aClass.getOverridableMethods(); -assertEquals(7, methods.length); +assertEquals(4, methods.length); // TODO(jat): verify getExtra is from A's anonymous subclass of // EnumInterface when/if that is implemented. boolean found = false; for (JMethod method : methods) { - if (name.equals(method.getName())) { + if (getExtra.equals(method.getName())) { found = true; // TODO(jat); any other verification here? } === --- /trunk/dev/core/test/com/google/gwt/core/ext/typeinfo/test/CB.java Mon May 28 21:53:34 2007 +++ /trunk/dev/core/test/com/google/gwt/core/ext/typeinfo/test/CB.java Mon Sep 13 10:29:13 2010 @@ -1,7 +1,10 @@ package com.google.gwt.core.ext.typeinfo.test; public abstract class CB extends CA implements IB { - + + public final void foo() { + } + public abstract void ic(); - -} + +} -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Updates RequestFactory's Receiver type with onViolation() and onFailure() methods, making it an ... (issue855802)
Reviewers: amitmanjhi, Description: Updates RequestFactory's Receiver type with onViolation() and onFailure() methods, making it an abstract type. Patch by: bobv Review by: amitmanjhi Please review this at http://gwt-code-reviews.appspot.com/855802/show Affected files: M samples/dynatablerf/src/com/google/gwt/sample/dynatablerf/client/PersonEditorWorkflow.java M samples/expenses/src/main/java/com/google/gwt/sample/expenses/client/ExpenseTree.java M user/src/com/google/gwt/requestfactory/client/RequestFactoryLogHandler.java M user/src/com/google/gwt/requestfactory/client/impl/AbstractRequest.java M user/src/com/google/gwt/requestfactory/shared/Receiver.java A user/src/com/google/gwt/requestfactory/shared/Violation.java -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Updates RequestFactory's Receiver type with onViolation() and onFailure() methods, making it an ... (issue855802)
http://gwt-code-reviews.appspot.com/855802/diff/1/6 File user/src/com/google/gwt/requestfactory/shared/Receiver.java (right): http://gwt-code-reviews.appspot.com/855802/diff/1/6#newcode40 user/src/com/google/gwt/requestfactory/shared/Receiver.java:40: GWT.getUncaughtExceptionHandler().onUncaughtException(t); If you want this to be an abstract class, it cannot depend upon the GWT runtime this way, or you kill testability. I think you'll need to leave it an interface. For that matter, why would you hard code this? The existing implementation simply throws the exception, there should be no need to force it into the uncaught exception handler yourself. That's kind of the point of it. http://gwt-code-reviews.appspot.com/855802/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Add the option to use JSON rather than GWT RPC in remote logging (issue830802)
http://gwt-code-reviews.appspot.com/830802/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Add the option to use JSON rather than GWT RPC in remote logging (issue830802)
http://gwt-code-reviews.appspot.com/830802/diff/3001/4002 File user/src/com/google/gwt/logging/client/JsonLogRecordClientUtil.java (right): http://gwt-code-reviews.appspot.com/830802/diff/3001/4002#newcode27 user/src/com/google/gwt/logging/client/JsonLogRecordClientUtil.java:27: * A set of functions to convert JSON strings into SerializableLogRecords. On 2010/09/13 18:24:50, fredsa wrote: Swap 1st javadoc sentence with JsonLogRecordServerUtil.java Done. http://gwt-code-reviews.appspot.com/830802/diff/3001/4003 File user/src/com/google/gwt/logging/server/JsonLogRecordServerUtil.java (right): http://gwt-code-reviews.appspot.com/830802/diff/3001/4003#newcode30 user/src/com/google/gwt/logging/server/JsonLogRecordServerUtil.java:30: * format. The corresponding functions to convert them back are in On 2010/09/13 18:24:50, fredsa wrote: I think the 1st sentence of the javadoc on this and the corresponding client class need to be swapped. Done. http://gwt-code-reviews.appspot.com/830802/diff/3001/4003#newcode33 user/src/com/google/gwt/logging/server/JsonLogRecordServerUtil.java:33: public class JsonLogRecordServerUtil { On 2010/09/13 18:24:50, fredsa wrote: It might be useful to leave out the 'Server' (and 'Client') bits in the classname, under the assumption that these two utility classes might be used in reverse at some point, e.g. in a client app which is able to pull down a bunch of log records from the server and display them. They actually need to be included in the client and server directories because they include different JSON** files. The ClientUtil includes the gwt.json.client classes, and the ServerUtil includes org.json classes. I don't know actually why the json stuff is not done as emulation - rumor has it that Ray C is working on something along these lines. I added som comments to the javadoc to explain this http://gwt-code-reviews.appspot.com/830802/diff/3001/4005 File user/src/com/google/gwt/logging/shared/SerializableStackTraceElement.java (right): http://gwt-code-reviews.appspot.com/830802/diff/3001/4005#newcode24 user/src/com/google/gwt/logging/shared/SerializableStackTraceElement.java:24: public class SerializableStackTraceElement implements IsSerializable { On 2010/09/13 18:24:50, fredsa wrote: This class should no longer be needed now that we have svn/trunk/user/super/com/google/gwt/emul/java/lang/StackTraceElement.java Ah right - this is leftover from when I was doing the JSON serialization differently - reverted. http://gwt-code-reviews.appspot.com/830802/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Optimize server-side LinkedHashMap_CustomFieldSerializer. (issue829802)
Reviewers: rice, Description: 1) Don't keep trying reflection if it's not working. 2) Cache the reflective Field needed for accessOrder. 3) Reuse KEY objects instead of making new ones each time. Please review this at http://gwt-code-reviews.appspot.com/829802/show Affected files: M user/src/com/google/gwt/user/client/rpc/core/java/util/LinkedHashMap_CustomFieldSerializer.java -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Updates RequestFactory's Receiver type with onViolation() and onFailure() methods, making it an ... (issue855802)
The existing implementation offers no way to do anything useful with the exception. An empty implementation of onFailed() is insufficient or the exception gets dropped on the floor. Interface it is then. --Bob. (Android) -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Optimize server-side LinkedHashMap_CustomFieldSerializer. (issue829802)
http://gwt-code-reviews.appspot.com/829802/diff/1/2 File user/src/com/google/gwt/user/client/rpc/core/java/util/LinkedHashMap_CustomFieldSerializer.java (right): http://gwt-code-reviews.appspot.com/829802/diff/1/2#newcode107 user/src/com/google/gwt/user/client/rpc/core/java/util/LinkedHashMap_CustomFieldSerializer.java:107: f.setAccessible(true); I might need to synchronized(f) around this one statement. I can imagine another thread 'seeing' the update to accessOrderField and getting the Field reference, but not 'seeing' setAccessible(true) as having been called. http://gwt-code-reviews.appspot.com/829802/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Updates RequestFactory's Receiver type with onViolation() and onFailure() methods, making it an ... (issue855802)
They're not getting dropped on the floor now. They're reaching the uncaught exception handler. Should we voice? On Mon, Sep 13, 2010 at 3:01 PM, BobV b...@google.com wrote: The existing implementation offers no way to do anything useful with the exception. An empty implementation of onFailed() is insufficient or the exception gets dropped on the floor. Interface it is then. --Bob. (Android) -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Updates RequestFactory's Receiver type with onViolation() and onFailure() methods, making it an ... (issue855802)
Nevermind, smart pills kicked in. Understood. On Mon, Sep 13, 2010 at 3:03 PM, Ray Ryan rj...@google.com wrote: They're not getting dropped on the floor now. They're reaching the uncaught exception handler. Should we voice? On Mon, Sep 13, 2010 at 3:01 PM, BobV b...@google.com wrote: The existing implementation offers no way to do anything useful with the exception. An empty implementation of onFailed() is insufficient or the exception gets dropped on the floor. Interface it is then. --Bob. (Android) -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Updates RequestFactory's Receiver type with onViolation() and onFailure() methods, making it an ... (issue855802)
More comments: - Add tests to ensure that onViolation and onError methods are called? - Additionally, remove the violations field from SyncResult and fix AbstractProxyEditActivity? - Similarly, the tests in RequestFactoryTest that check for violations will need to be fixed. http://gwt-code-reviews.appspot.com/855802/diff/1/7 File user/src/com/google/gwt/requestfactory/shared/Violation.java (right): http://gwt-code-reviews.appspot.com/855802/diff/1/7#newcode31 user/src/com/google/gwt/requestfactory/shared/Violation.java:31: EntityProxy getProxy(); Use EntityProxyId instead? http://gwt-code-reviews.appspot.com/855802/show -- http://groups.google.com/group/Google-Web-Toolkit-Contributors
[gwt-contrib] Re: Add the option to use JSON rather than GWT RPC in remote logging (issue830802)
LGTM -- http://groups.google.com/group/Google-Web-Toolkit-Contributors