Re: Fwd: Tree performance
Hi Greg. TreeItems use up a lot of HTML boxes, so drawing thousands of them equates to drawing tens of thousands of HTML boxes. That takes time in javascipt. I did this test program some time ago to see what the difference was between Tree and FastTree - you might be able to use this to your own practical limit. Cool, thanks a lot, Michael --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to Google-Web-Toolkit@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/Google-Web-Toolkit?hl=en -~--~~~~--~~--~--~---
auto-deploy GWT artifacts on googlecode maven repository ?
Hi Maven guys helped Gregory Kick from Google to setup a maven repository (http://code.google.com/p/google-maven-repository/) for google artifacts. The idea is to have all google projects available to maven user without requirement for a third-party to publish them on maven plublic repo. I'm another apache maven developper and published previous versions of GWT : http://repo2.maven.org/maven2/com/google/gwt/ Those artifacts are the same GWT guys publish using googlecode, just with some tweak on names to match maven naming/versionning conventions. There is also 3 other artifact in ZIP format to package all necessary native libs. It is used by both mojo [1] and googlecode [2] GWT plugins. This one is not yet built by the GWT ant script, but could also be easily created. Could you please support this artifact publication process as part of the GWT build process ? I could contribute the maven-side if you like - please note this DOESN'T require to replace the existing ant script or to create a maven-based build script, only publication process is in discution here. [1] http://mojo.codehaus.org/gwt-maven-plugin/ (my own plugin :) [2] http://code.google.com/p/gwt-maven/ --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to Google-Web-Toolkit@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/Google-Web-Toolkit?hl=en -~--~~~~--~~--~--~---
Re: GWT serilization policy issue !!
IMHO in your case you should try to use the RemoteServiceServlet implementation. I imagine the you have a dispatch servlet that use your adapter, If I'm true, let your handler use this servlet (extending RemoteServiceServlet) to decode the payload. You could inject this servlet (Spring Proxy. ) or expose it reference with Static getInstances ... On Wed, Nov 12, 2008 at 11:03 AM, Sam [EMAIL PROTECTED] wrote: Hello Olivier, Thanks for the reply, I have seen your code and it extends from RemoteServiceServlet. Thats why you can pass third parameter as this . In my case , the service does not extend from RemoteServiceServlet. The actual defination of my class is public class GWTHandlerAdapter implements HandlerAdapter, ServletContextAware Hence I wont be able to pass third parameter as this to the API RPC.decodeRequest(). It works as per expected if I copy the portion of the code from the RemoteServiceServlet and pasted it into MySerilizationPolicy.java. The code for the same is as follows. RPCRequest rpcRequest = RPC.decodeRequest(requestString, remote_service.getClass(), MySerializationPolicyProvider .getInstance (servletContext, request, response)); (MySerializationPolicyProvider implements SerializationPolicyProvider) My concern is , is this the best way to deal with the scenerio in which service class is not extending from RemoteServiceServlet. Or is there any other way to achive this. Code for MySerializationPolicyProvider is given below which is actually a copied code from RemoteServiceServlet. However problem with this approch is, if in next build of GWT , google made any change in The methodes of RemoteServiceServlet then we also need to include that change in our MySerializationPolicyProvider class . So m looking for some other alternative if at all possible. public class MySerializationPolicyProvider implements SerializationPolicyProvider { /** * A cache of moduleBaseURL and serialization policy strong name to [EMAIL PROTECTED] SerializationPolicy}. */ private ServletContext servletContext; /** ptcSerializationPolicy is used for getting the serialization policy once initialized. */ private SerializationPolicy ptcSerializattionPolicy = null; private final MapString, SerializationPolicy serializationPolicyCache = new HashMapString, SerializationPolicy(); private final ThreadLocalHttpServletRequest perThreadRequest = new ThreadLocalHttpServletRequest(); private final ThreadLocalHttpServletResponse perThreadResponse = new ThreadLocalHttpServletResponse(); private static MySerializationPolicyProvider MySerializationPolicyProviderInstance; private static final org.apache.log4j.Logger log = wt.log4j.LogR.getLogger(MySerializationPolicyProvider.class .getName()); private MySerializationPolicyProvider() { } /** * Constructor for making the class Singelton . * * @param servletContext * @param request * @return response */ private MySerializationPolicyProvider(ServletContext servletContext, HttpServletRequest request, HttpServletResponse response) { this.servletContext = servletContext; perThreadRequest.set(request); perThreadResponse.set(response); } /** * API for getting MySerializationPolicyProvider instance. * * @param servletContext * @param request * @return response */ public static MySerializationPolicyProvider getInstance (ServletContext servletContext, HttpServletRequest request, HttpServletResponse response) { if (MySerializationPolicyProviderInstance == null) MySerializationPolicyProviderInstance = new MySerializationPolicyProvider(servletContext, request, response); return MySerializationPolicyProviderInstance; } /** * API for getting serializationPolicy. * * @param moduleBaseURL * @param strongName */ public SerializationPolicy getSerializationPolicy(String moduleBaseURL, String strongName) { SerializationPolicy serializationPolicy = getCachedSerializationPolicy(moduleBaseURL, strongName); if (serializationPolicy != null) { this.ptcSerializattionPolicy = serializationPolicy; return serializationPolicy; } serializationPolicy = doGetSerializationPolicy (getThreadLocalRequest(), moduleBaseURL, strongName); if (serializationPolicy == null) { // Failed to get the requested serialization policy; use the default serializationPolicy = RPC.getDefaultSerializationPolicy(); } // This could cache null or an actual instance. Either way we will not // attempt to lookup the policy again. putCachedSerializationPolicy(moduleBaseURL, strongName, serializationPolicy); this.ptcSerializattionPolicy
Re: Bug with InfoWindow and Second Map
I just pinged the Maps team on it. On Mon, Nov 10, 2008 at 5:01 PM, [EMAIL PROTECTED] [EMAIL PROTECTED] wrote: Oh yes, I see, these Issues are definitely related Thx for the Info, is there an ETA on a solution? -- Eric Z. Ayers - GWT Team - Atlanta, GA USA http://code.google.com/webtoolkit/ --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to Google-Web-Toolkit@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/Google-Web-Toolkit?hl=en -~--~~~~--~~--~--~---
HostPage is the same as BasePage
Hey Guys, I created a new project and am running into a silly little problem with my remote service configuration. Basically, when I go to set the location of the Servlet, GWT.getHostPageBaseURL () and getModuleBaseURL () return the same value: http://localhost:/com.teledini.app.Application/. My RPCServices are located at http://localhost:/LoginService (for instance). In the past, a simple: endpoint.setServiceEntryPoint ( GWT.getHostPageBaseURL () + LoginService ); was enough to get the correct path in Hosted Mode, in prod, in noserver, anything. What have I messed up in my project that's making it do this? I don't even know where to start looking! Thanks guys! Evan --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to Google-Web-Toolkit@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/Google-Web-Toolkit?hl=en -~--~~~~--~~--~--~---
Re: SuggestBox list in another Panel
If I remember well, the Incubator has an RPC/Remote SuggestBox/Oracle that can take any widget to display the list. Search this group or the incubator project website/code to find out more details. I haven't tried doing this, so I can't provide more help. Good luck, and report back if you find or come up with an implementation. On Nov 12, 12:49 am, zujee [EMAIL PROTECTED] wrote: any clue? On Nov 11, 6:39 pm, zujee [EMAIL PROTECTED] wrote: Hi Experts, I created a suggest box like MultiWordSuggestOracle oracle = new MultiWordSuggestOracle(); oracle.add(Cat); oracle.add(Dog); oracle.add(Horse); oracle.add(india); oracle.add(Canada); oracle.add(France); oracle.add(uk); oracle.add(Japan); oracle.add(Russia); SuggestBox box = new SuggestBox(oracle); RootPanel.get().add(box); The list is showing like a combo box. But i want to display that list in another panel according to the user type in text box. Is that possible Please help. Thansk and regads zuje --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to Google-Web-Toolkit@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/Google-Web-Toolkit?hl=en -~--~~~~--~~--~--~---
OffsetHeight of RootPanel
Hi, I wanted to get the total height (scrollable area) of the root panel. I used the following: RootPanel.get().getOffsetHeight() In Firefox its working, but in IE 6 its giving me only the window height (ie. value of Window.getClientHeight()). Can you tell me if its a bug or please share if you have any workarounds. Basically I wanted to have a glass panel (LightBox effect) for popup window. I wanted to set the height of the glass panel as same as the RootPanel so that it dims the entire behind window when the popup comes. Now in IE the glass panel height is only the window height which prevents dimming bottom part of the screen. Regards, Litty Preeth --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to Google-Web-Toolkit@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/Google-Web-Toolkit?hl=en -~--~~~~--~~--~--~---
Re: question about JSNI
Submitted a bug report: http://code.google.com/p/google-web-toolkit/issues/detail?id=3098 --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to Google-Web-Toolkit@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/Google-Web-Toolkit?hl=en -~--~~~~--~~--~--~---
Re: Integrating GWT application with existing java project
Bliss, If there's just one class like that, I would package it with the client code, and in my Ant script (or whatever) to build the server side deployment, just make sure to compile and copy that class. Then you don't need to mess with additional Modules. But if you want to go the route you have started down, it sounds as though you have not established the correct source path for MyClass. If it's not in a client/ folder right under the folder where you Module file is, then its path needs to be explicit. Walden On Nov 10, 5:05 pm, Bliss [EMAIL PROTECTED] wrote: I am having a similar issue integrating a GWT page into my existing J2EE app. I have isolated all of my GWT code into the 'normal' structure, but have one Class that 'bridges' my GWT code and my existing backend business. I was hoping this would make it easier to integrate dependency-wise. my com.myproject.myGWTProject has a java class that needs to access to com.myproject.mysubpackage.myClass I am not sure what needs to be added to the GWT configuration in order to compile my module with this class reference. I have add the myClass.gwt.xml to the directory, created a jar with myClass.class, MyClass.java and myClass.gwt.xml and added this to the lib directory of my GWT app. I then added this to the .compile and .shell and added an inherits to myGWTProject.gwt.xml - but i still get a no source code error for myClass. On Oct 29, 7:01 am, walden [EMAIL PROTECTED] wrote: I meant to say GWT modules above, not packages. On Oct 28, 12:37 pm, walden [EMAIL PROTECTED] wrote: VK, For starters, why don't you create a 'gwt' folder in your source hierarchy that is outside the scope of all your Java EE classes, and preserve the canonical gwt project structure there. It could be just as simple as that. In future, if you have GWT remote services, you may want to move their implemtnations to your servlet folder, if you have one. There are other things you might need to do if you intend to share model classes between EJB3 and GWT, but let's talk about that later, as it involves creating additional GWT package(s). The important thing at this stage is not to try to shuffle GWT client classes in with other stuff that does not need to meet up with the GWT compiler. Keep life simple. Walden On Oct 28, 8:36 am, vk [EMAIL PROTECTED] wrote: Hi, I've been developing a GWT-application that uses RPC. However, now I want to integrate the GWT-app into the existing J2EE-application . I am however not very good at integrating GWT-structure, or how to succesfully move it around to make it fully integrated with all the existing code in the J2EE-app. Att he moment I have two different file-structures, one for the J2EE- app and one on my GWT-app (the GWT-structure is the standard-file structure, for example: src/ com.mycompany.project / public / Search.html Search.css build.xml Search.gwt.xml com.mycompany.project.client / Search.java (Entry-point-class) SearchService.java SearchServiceAsync.java com.mycompany.project.server / SearchServiceImpl.java My questions are: 1) How do I integrate this fully into my existing J2EE-project? (Where do the files go etc?) 2) Can I move the files wherever I want in the existing J2EE-project and have them recompiled as I want? (How do I make sure GWT-compiler knows which of the java-files it has to worry about in the vast ammount of java-files in the J2EE-project? And where do I change this?) I hope you can understand my problems and what I'm in need of help with. Maybe someone got a screenshot of how to place the GWT-files in a non-GWT-project and which files has to be changed to make the GWT- files still be compiled as you want to (while skipping all non-gwt- files). If it makes a difference, I'm using MyEclipse to develop this. thanks in advance,- Hide quoted text - - Show quoted text -- Hide quoted text - - Show quoted text -- 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-Toolkit@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/Google-Web-Toolkit?hl=en -~--~~~~--~~--~--~---
Re: gwittir with gwt1.5
This is a problem with gwitter 0.4.4 and GWT 1.5. An issue has been submitted to the gwitter project: http://code.google.com/p/gwittir/issues/detail?id=12. --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to Google-Web-Toolkit@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/Google-Web-Toolkit?hl=en -~--~~~~--~~--~--~---
How can I find address of the server?
Hi, I'm trying to use GWT to create a web interface for wireless embedded devices, and due to space constrains I can't use Java on server side and have to go with HTTP requests. How can I find the server address in GWT? Best Regards, Marian --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to Google-Web-Toolkit@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/Google-Web-Toolkit?hl=en -~--~~~~--~~--~--~---
Creating tests that can run on both server and client sides
Hello, I have these tests for model entities and other supporting classes that are Javascript and/or serialization compatible. I want to run these tests in my server side only JUnit tests, outside of the container. (Spring based server so it's easy to do container- less testing). These tests are run all days long by developers and must run super fast (they use an embedded hsqldb database with test data sourced at the beginning of each test class). However, for these hybrid classes, I also want to run the same tests in GWT hosted and web modes. Question is: How can I write these tests only once and be able to run them in pure server-side JUnit tests and also in a GWT (Javascript) environment? The best scenario would be: * Write the server-side only test (compatible with JUnit 4 if possible). * Extends this test to make it run in JRE emulation and web modes by implementing an interface thru aggregation of GWT helper classes? Thank you for your help, Remy --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to Google-Web-Toolkit@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/Google-Web-Toolkit?hl=en -~--~~~~--~~--~--~---
Re: GWT app deploy
Just a couple of quick questions: 1. Is this happening in all browsers or just IE? 2. Where is your CSS file located? 3. Are you inheriting any GWT Themes? Let me know, James On Wed, Nov 12, 2008 at 3:57 AM, Dimitrijević Ivan [EMAIL PROTECTED] wrote: I made some GWT application and I would like to deploy it in my existing web application which is not GWT. After compiling my application, gwt compiler generated several files. In my existing web application I located a file in which my gwt app should be included. So I made folder 'gwt' and in the heading of html file added gwt/...noscript.js file. Of course I made some DIV element and gave it id which is used in RootPanel.get(id)... method. My gwt application works fine, but it does not look nice. Some pictures are not loaded and styles. For example radio buttons are right-to-left oriented instead left-to right. Is there some solution which does not include that all files from www folder should be at the same folder where my new host page is? I read about -gen parameter in GWTCompiler options. --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to Google-Web-Toolkit@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/Google-Web-Toolkit?hl=en -~--~~~~--~~--~--~---
Help wanted fileDownload and authentication
Hey all, I have a lighttpd based serverside code + GWT based application. I want to download a file. When user clicks on a button I want the 'Save as' popup to show. Two approaches -- 1) I used a FormPanel class - save as popup comes I can save the file however I can not 'set headers'. So before save as popup - the browser popup asking authentication comes. So is there a way to include header info in FormPanel. 2)I used RequestBuilder class, now I could get header info in but it doesn't bring up the Save as popup. How to use this?? I also tried IFRAME - browser popup of authentication still comes up.I have tried any other suggestion that any forum could offer but not able to figure out. Any help is greatly appreciated!! Thanks, slash --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to Google-Web-Toolkit@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/Google-Web-Toolkit?hl=en -~--~~~~--~~--~--~---
Open url with POST parameters
Hi all, I've searching all around the discussions and although there were a few hints, I couoldn't find a suitable solution. In HTML, I have a form like: -- form name=retrieve method=POSTaction=http://action_script; input type=submit value=submit table tR td align=centerdiv style=padding: 1px 1px 1px 1px; background- color: rgb(0,255,0); border: solid black 1px;input name=dataset type=checkbox value=datasetID/div/tdtdDataset/td/tr /table /form When I click on submit, a new url is opened and process the datasetID accordingly, for example, a new html page displaying: You have selected datasetID= . I want to reproduce this behaviour with GWT, submitting some parameters via POST, opening a new browser window with that datasetID being passed. Anyone with similar experience? Note: The action_script is not changable, requires data being passes via POST, I cannot do anything in that side. Thanks --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to Google-Web-Toolkit@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/Google-Web-Toolkit?hl=en -~--~~~~--~~--~--~---
Compiler problem: newline issue - deployment files different on UNIX and Windows for same source
Our GWT application, when build on Solaris (we develop on Solaris), compiles without error and works fine when deployed to a Tomcat server (on Solaris too). When we use the 'Hosted Mode' shell, we run it on Windows (as there isn't a Solaris version yet) with -noserver and the URL pointing to the Solaris Tomcat server. The shell has access to the source code through a mapped drive to the Solaris box. What we noticed is that the files generated by the Solaris build process and when pressing the Compile button in the shell are different. That kills us when we do RPC calls as the Serialization Policy files can not be found. As a work around we implement IsSerializable instead of java.io.Serializable such that we can use the LegacySerializationPolicy on the server. Why is that happening? Well, the files generated on Windows contain /r/ n as line separator and on Solaris it's just /n. That makes the file content different as far as MD5 is concerned even though the files are really identical otherwise. I checked that by manually calculating the MD5 for the files generated on Windows and Solaris - the MD5 checksum matches the file name of the files. Can that be somehow addressed at the compiler level? Is there another workaround? Thanks Christian --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to Google-Web-Toolkit@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/Google-Web-Toolkit?hl=en -~--~~~~--~~--~--~---
Re: Help required...
What are you looking to do with GWT? I mean what is your knowledge base in knowing Java, which doesn't matter much, but you have to at least understand the syntax. The next step after that is to just pick a development IDE which is the easiest way to use GWT. I use Netbeans, but you can also use Eclipse which is what GWT has a lot of information on. Then start off with small applications adding to them as you learn new things about GWT. GWT is not that hard to use, but it is like any new library, you have to play with it to understand how it works. I've gotten pretty good at it, and it only took me two weeks to get a real good understanding of how it works. I'm sure the guys at Google would cringe at some of my code, but hey all that matters is that I get my projects to work. Primarily I would start with working on laying out a site with panels, using VerticalPanel, HorizontalPanel, FlowPanel, AbsolutePanel, and the DockPanel, these are the primary panels you will use in GWT. Then it is just a matter of adding widgets to these panels and using Google to search for solutions to any problems you run into. I have spent countless hours searching through posts and blogs. I wouldn't suggest buying a book because it is not really necessary, unless you want to learn about how GWT compiles Java into javascript. Be more descriptive in the problems you are having in getting started and I will see what I can do to help you. James On Nov 11, 11:01 pm, Sanju [EMAIL PROTECTED] wrote: Hi I am new to GWT , I got to know about it recently.Now I a want to learn GWT can any one guide me step by step so that I can learn GWT!I referred this sitehttp://code.google.com/webtoolkit/examples/ unfortunately I couldn't understood much from it as I am having confusion from where to start and how do I proceed.I think I need you peoplehelpto move on in using GWT as my development platform... --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to Google-Web-Toolkit@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/Google-Web-Toolkit?hl=en -~--~~~~--~~--~--~---
GWT app deploy
I made some GWT application and I would like to deploy it in my existing web application which is not GWT. After compiling my application, gwt compiler generated several files. In my existing web application I located a file in which my gwt app should be included. So I made folder 'gwt' and in the heading of html file added gwt/...noscript.js file. Of course I made some DIV element and gave it id which is used in RootPanel.get(id)... method. My gwt application works fine, but it does not look nice. Some pictures are not loaded and styles. For example radio buttons are right-to-left oriented instead left-to right. Is there some solution which does not include that all files from www folder should be at the same folder where my new host page is? I read about -gen parameter in GWTCompiler options. --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to Google-Web-Toolkit@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/Google-Web-Toolkit?hl=en -~--~~~~--~~--~--~---
Dynamic UI in GWT
Hi, I’m currently learning GWT in order to be able to create a prototype of our new application. My main issue is the following: we need a dynamic application like an OSGi-based one or SOA-based. The goal is to have several module/package and each one defines its UI. It’s pretty much like Eclipse does but in a Web application. I try to look at different ways to do that. First using OSGi and stuff: Ooops I forgot the compilation… Then I though about on-the-fly compilation since the compiler is in Java, so it can be called from Java, when the user drop a module. Even though this can be interesting and fun to develop it’s not a practical solution, too many constraints. Then I was left with my last choice: declarative UI where the UI is defined in some kind of XML file and instantiate in the client side like any other lazy UI but I didn’t find a satisfying library. I’m looking for feed back on any experience you might have in that area: dynamic UI over several modules. If you have interesting reading/ link/libraries that can help me that would be terrific too. Also, I’m open to any other solution that might fill our need of modular application. Thanks a lot in advance, Antoine. --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to Google-Web-Toolkit@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/Google-Web-Toolkit?hl=en -~--~~~~--~~--~--~---
Re: question about JSNI
I'm passing in System.currentTimeMillis() to make it call the 1 arg constructor. Other places in my code pass in other values. Workaround: - use GWT.isScript() to avoid calling the JSNI methods. Other notes: - when running the GWTShell, I used the -noserver flag and pointed it at an external tomcat instance running on localhost. Not sure if that matters. -Ben --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to Google-Web-Toolkit@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/Google-Web-Toolkit?hl=en -~--~~~~--~~--~--~---
[ANN] Hibernate4GWT becomes Gilead release 1.2 RC1
The new release of hibernate4gwt is available as Gilead 1.2RC1 at http://gilead.sourceforge.net ! The whole serialization process has been rewritten, improving both stateless (no more select on merge) and stateful (improved storage size) modes. Furthermore, two annotations have been added (@ReadOnly and @ServerOnly) to help you to control the clone and merge process. With them, you can prevent sensible data to be sent or modified on client side. Finally, this release add Flex/BlazeDS support (this latter point explains the project name change : I did not want to rename hibernate4gwt into hibernate4gwtblazeds ;-) ). Note that, due to important modifications on source code, this release must be considered as beta version and should not be used in production. Regards Bruno --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to Google-Web-Toolkit@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/Google-Web-Toolkit?hl=en -~--~~~~--~~--~--~---
Re: Open url with POST parameters
What I am hearing here is that in the existing system, a response or redirect occurs after you POST to the action_script URL, which replaces the document in the current window. But you want to use GWT to make that same document open in a new window? And you have no control over the server side implementation? I think you're stuck. What comes back from the POST is a page reload, and that means your GWT javascript in the original page is gone. Did I misunderstand the plumbing? If you want to open a new window to a known location in GWT, it looks like this: Window.open(new_url_string, unique_window_name, ); I don't know if that helps though. Walden On Nov 12, 6:34 am, Cesc [EMAIL PROTECTED] wrote: Hi all, I've searching all around the discussions and although there were a few hints, I couoldn't find a suitable solution. In HTML, I have a form like: -- form name=retrieve method=POSTaction=http://action_script; input type=submit value=submit table tR td align=centerdiv style=padding: 1px 1px 1px 1px; background- color: rgb(0,255,0); border: solid black 1px;input name=dataset type=checkbox value=datasetID/div/tdtdDataset/td/tr /table /form When I click on submit, a new url is opened and process the datasetID accordingly, for example, a new html page displaying: You have selected datasetID= . I want to reproduce this behaviour with GWT, submitting some parameters via POST, opening a new browser window with that datasetID being passed. Anyone with similar experience? Note: The action_script is not changable, requires data being passes via POST, I cannot do anything in that side. Thanks --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to Google-Web-Toolkit@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/Google-Web-Toolkit?hl=en -~--~~~~--~~--~--~---
Re: Native GWT Compiler
Hi Sumit, This multithreaded compiler sounds intriguing. Could you provide some guidance about how to get it and use it? Thanks, Alex On Oct 13, 1:08 pm, Sumit Chandel [EMAIL PROTECTED] wrote: Hi Rauf, There are currently no plans to rewrite the GWT compiler as a native compiler. There are plans to speedup compilation time with the current GWT compiler, however, and the team is in the know about long compilation times that some developers have been experiencing when moving their projects form 1.4.x to 1.5. The new multi-threaded compiler is available in trunk if you're interested in checking it out to see if it helps speed up your application compile time. From benchmarks we've run and what some developers have been reporting, the new multi-threaded compilation has been showing significant improvements in compilation speed, so you should be getting faster results for your own project as well. Hope that helps, -Sumit Chandel On Wed, Oct 8, 2008 at 2:36 PM, Rauf Issa [EMAIL PROTECTED] wrote: Any plans to write a native GWT Compiler like jikes for java? I know there are plans to improve GWT compiler performance in the upcoming 1.6 release of GWT by multi-threading but I am not sure that will make enough difference. A native compiler like jikes would be better and much faster. Our product, JobServer (job scheduling engine) uses GWT for its GUI SDK and we compile GWT components on the fly the first time the GWT is used. This frees the developer from doing the GWT compiler if they do not want to. This works very well but the initial GWT compiling of the GWT UI components can take minutes sometimes and is annoying. I would really like this to be more like compiling JSP pages for example. Anyway I can only hope that GWT compiling gets faster (right now it is getting slower with all the advanced optimizations done in GWT 1.5 :) Rauf Issa http://www.grandlogic.com JobServer - The Most Comprehensive Java Job Scheduling Platform --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to Google-Web-Toolkit@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/Google-Web-Toolkit?hl=en -~--~~~~--~~--~--~---
Re: Native GWT Compiler
get it : The new multi-threaded compiler is available in trunk if you're interested use it : like the google web toolkit . regards . Le mercredi 12 novembre 2008 à 10:56 -0800, Alex Epshteyn a écrit : Hi Sumit, This multithreaded compiler sounds intriguing. Could you provide some guidance about how to get it and use it? Thanks, Alex On Oct 13, 1:08 pm, Sumit Chandel [EMAIL PROTECTED] wrote: Hi Rauf, There are currently no plans to rewrite the GWT compiler as a native compiler. There are plans to speedup compilation time with the current GWT compiler, however, and the team is in the know about long compilation times that some developers have been experiencing when moving their projects form 1.4.x to 1.5. The new multi-threaded compiler is available in trunk if you're interested in checking it out to see if it helps speed up your application compile time. From benchmarks we've run and what some developers have been reporting, the new multi-threaded compilation has been showing significant improvements in compilation speed, so you should be getting faster results for your own project as well. Hope that helps, -Sumit Chandel On Wed, Oct 8, 2008 at 2:36 PM, Rauf Issa [EMAIL PROTECTED] wrote: Any plans to write a native GWT Compiler like jikes for java? I know there are plans to improve GWT compiler performance in the upcoming 1.6 release of GWT by multi-threading but I am not sure that will make enough difference. A native compiler like jikes would be better and much faster. Our product, JobServer (job scheduling engine) uses GWT for its GUI SDK and we compile GWT components on the fly the first time the GWT is used. This frees the developer from doing the GWT compiler if they do not want to. This works very well but the initial GWT compiling of the GWT UI components can take minutes sometimes and is annoying. I would really like this to be more like compiling JSP pages for example. Anyway I can only hope that GWT compiling gets faster (right now it is getting slower with all the advanced optimizations done in GWT 1.5 :) Rauf Issa http://www.grandlogic.com JobServer - The Most Comprehensive Java Job Scheduling Platform --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to Google-Web-Toolkit@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/Google-Web-Toolkit?hl=en -~--~~~~--~~--~--~---
Trouble Integrating single component page into existing j2ee application
I have created a single page using a GWT component and a class that acts as a 'bridge' between my business code and the front end component. I isolated all the GWT code into a separate package structure for ease- and included it in my application with no troubles,when it doesnt reference any other packages. However, in real life- I need my 'bridge' code to import classes from other packages in my J2ee application, and am having issues. I have com.mygwtpackage.myGWTProject inherit com.mypackage.myClass - module !-- Inherit the core Web Toolkit stuff. -- inherits name='com.google.gwt.user.User'/ !-- Other module inherits -- inherits name='com.gwtext.GwtExt' / inherits name='com.mypackage.myClass' / !-- Specify the app entry point class. -- entry-point class='com.myGwtpackage.client.myGwtProject'/ !-- Specify the application specific style sheet. -- stylesheet src=js/ext/resources/css/ext-all.css / script src=js/ext/adapter/ext/ext-base.js / script src=js/ext/ext-all.js / /module - I have included com.mypackage.myClass.class com.mypackage.myClass.java and myClass.gwt.xml ?xml version=1.0 encoding=UTF-8? module !-- Inherit -- inherits name='com.google.gwt.user.User'/ source path=./ /module - in a jar file included in com.mypackage.myGWTProject/lib I have added this jar reference to the .compile and .shell files. I am having trouble compiling since I get : Loading module 'com.myGwtpackage.myGwtClass' Loading inherited module 'com.mypackage.myClass' [WARN] Non-canonical source package: ./ Removing units with errors [ERROR] Errors in 'file:/C:/path/path/src/com/myGwtPackage/client/ MyTree.java' [ERROR] Line 92: No source code is available for type com.mypackage.myClass; did you forget to inherit a required module? Removing invalidated units [WARN] Compilation unit 'file:/C:/path/src/com/myGwtpackage/client/ myGwtClass.java' is remo ved due to invalid reference(s): [WARN] file:/C:/path/src/com/myGwtpackage/client/MyTree.java Compiling module com.myGwtpackage.myGwtClass Computing all possible rebind results for 'com.myGwtpackage.client.myGwtClass' Rebinding com.myGwtpackage.client.myGwtClass Checking rule generate-with class='com.google.gwt.user.rebind.ui.ImageBun dleGenerator'/ [ERROR] Unable to find type 'com.myGwtpackage.client.myGwtClass [ERROR] Hint: Previous compiler errors may have made this type unava ilable [ERROR] Hint: Check the inheritance chain from your module; it may n ot be inheriting a required module or a module may not be adding its source path entries properly [ERROR] Build failed --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to Google-Web-Toolkit@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/Google-Web-Toolkit?hl=en -~--~~~~--~~--~--~---
MySpace makeRequest req.send(response) doesn't only works on FireFox
Dear Groups, I'm developing a widget for Myspace by GWT. I use JSNI to embed the opensocial API relative code. 1. add a listener for my panel; addListener(new PanelListenerAdapter() { public void onActivate(Panel panel) { logWindow.log(recordPanel activated. callMakeRequest(+_baseUrl+_storeId+)); callMakeRequest(thisPanel,_baseUrl,_storeId); } }); } 2.my jsni code private native void callMakeRequest(Panel thisPanel,String baseUrl,String storeId) /*-{ $wnd[recordResponse] = function(obj) { [EMAIL PROTECTED] ::handleResponse(Lcom/magpieradio/client/ui/RecordResponse;)(obj); }; var os_param = new Array(); os_param[gadgets.io.RequestParameters.METHOD] = gadgets.io.MethodType.GET; os_param[gadgets.io.RequestParameters.CONTENT_TYPE] = gadgets.io.ContentType.DOM; //var url = baseUrl+data.php?al=0myspaceid=+storeId; var url = 'http://www.magpie.fm/~yunhui_song/bandResource.xml'; gadgets.io.makeRequest(url, recordResponse, os_param); }-*/; and java-js bridget code public void handleResponse(RecordResponse br) { logWindow.log(call handleResponse); String xmlMsg = br.getRecordListing(); logWindow.log(xmlMsg=+xmlMsg); logWindow.log(call refreshByXmlMsg+xmlMsg); refreshByXmlMsg(xmlMsg); } class RecordResponse extends JavaScriptObject { // Overlay types always have protected, zero-arg ctors protected RecordResponse() { } public final native String getRecordListing() /*-{ return this.text; }-*/; } I use a debug window to display the output on myspace, alert() doesn't work on myspace. I told me everything is ok in FireFox3, but When I tested in other browsers(IE, Chrome,Opera and Safari), this method doesn't work. gadgets.io.makeRequest(url, recordResponse, os_param); In chrome and Safari I got the error message: Refused to set unsafe header Content-length Refused to set unsafe header Connection After reading documentation from myspace reference and opensocial API reference in more detail, I don't found any clue about the problem. Has anybody faced the similiar case? any suggestion is welcome. Thanks in advance. Sammi --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to Google-Web-Toolkit@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/Google-Web-Toolkit?hl=en -~--~~~~--~~--~--~---
Re: auto-deploy GWT artifacts on googlecode maven repository ?
I also added a comment to http://code.google.com/p/google-web-toolkit/issues/detail?id=1609q=maven that relates to this requirement for maven users. On 12 nov, 10:19, nicolas.deloof [EMAIL PROTECTED] wrote: Hi Maven guys helped Gregory Kick from Google to setup a maven repository (http://code.google.com/p/google-maven-repository/) for google artifacts. The idea is to have all google projects available to maven user without requirement for a third-party to publish them on maven plublic repo. I'm another apache maven developper and published previous versions of GWT :http://repo2.maven.org/maven2/com/google/gwt/ Those artifacts are the same GWT guys publish using googlecode, just with some tweak on names to match maven naming/versionning conventions. There is also 3 other artifact in ZIP format to package all necessary native libs. It is used by both mojo [1] and googlecode [2] GWT plugins. This one is not yet built by the GWT ant script, but could also be easily created. Could you please support this artifact publication process as part of the GWT build process ? I could contribute the maven-side if you like - please note this DOESN'T require to replace the existing ant script or to create a maven-based build script, only publication process is in discution here. [1]http://mojo.codehaus.org/gwt-maven-plugin/(my own plugin :) [2]http://code.google.com/p/gwt-maven/ --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to Google-Web-Toolkit@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/Google-Web-Toolkit?hl=en -~--~~~~--~~--~--~---
Re: Suggestion: GWT port to Desktop
On Oct 29, 6:29 am, lkcl [EMAIL PROTECTED] wrote: rummikub has 110 images loaded onto the page. firefox takes about 5-8 seconds to add all the tokens, one-by-one with javascript (compiled from python of course). pyjamas-desktop, usingwebkit, takes about 2 seconds. the javascript is gone in pyjamas-desktop; it's a glib / gobject binding direct to the c++ function which adds the image to the DOM model, direct. If you use GWT ImmutableResourceBundles/ClientBundles, you get the same benefits, without the hassle, and GWT will combine multiple images into a single image, and turn it into a data URL, eliminating File/Network I/O, and requiring the image to be loaded and decoded once from a data: URL. I personally think what's being proposed sounds a little backwards to me. It's overly complex and error prone relying too much on native interfacing (are you telling me it's impossible to memory leak or cause a segfault with pyjamas?). If you're going to use the browser for rendering anyway, you may as well let the DOM get manipulated by Javascript, which is currently quite fast in SquirrelFish, Firefox 3, and Opera. Really, all you're doing is using an IDL call of element.appendChild(foo) instead asking WebKit to eval element.appendChild(foo) What you really want is access to native platform features, and to run numerically intensive code in Java, that is, you want the ability to call Java methods from Javascript. This is what I implemented in Syndroid (http://timepedia.blogspot.com/2008/01/project- syndroidsynthesis-of-gwt-and.html) for Android. This is a GWT generator/linker library that allows calls between Java/Javascript. I demonstrated at Google I/O, the capability of developing a GWT app that can access native Android APIs painlessly. What's more, my own GWT product, Chronoscope, compiles to Android natively (no Javascript) and runs 100% in Dalvik. There is alot of functionality that can be delivered without getting into the overly complex and error approach of trying to expose all the guts and internals of WebKit as JNI functions. The speedup benefit of running the UI modification thread inside of WebKit as JS, but running the business logic in Java, vs running everything in Java simply doesn't justify the downsides IMHO. -Ray p.s. my Syndroid presentation is here, at roughly 32 minutes in: http://www.youtube.com/watch?v=2ScPbu8ga1Q --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to Google-Web-Toolkit@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/Google-Web-Toolkit?hl=en -~--~~~~--~~--~--~---
Re: Dynamic UI in GWT
On Wed, Nov 12, 2008 at 7:35 AM, Antoine [EMAIL PROTECTED] wrote: I'm looking for feed back on any experience you might have in that area: dynamic UI over several modules. If you have interesting reading/ link/libraries that can help me that would be terrific too. Also, I'm open to any other solution that might fill our need of modular application. Hmm.. dynamic UI or several modules ... is this a false dichotomy? I'm working on a forms package that generates a client UI dynamically. Here's an example: public class DemoForm extends Form { public DemoForm() { setTitle(Demo Form); } @FormField(label = Name, required = true, order = 1) @CharField(maxLength = 50) private String name; @FormField(label = Address 1, order = 2) @CharField(maxLength = 50) private String address1; @FormField(label = Address 2, order = 3) @CharField(maxLength = 50) private String address2; @FormField(label = E-mail, order = 4, required = true) @EmailField() private String email; @FormField(label = Verify E-mail, order = 5, required = true) @EmailField() private String verifyEmail; @FormField(label = Phone, required = true, order = 6) @PhoneField() private String phone; @FormField(label = Phone 2, order = 7) @PhoneField() private String phone2; @FormField(label = A Date, order = 8) @DateField() private String date; } You can probably see where this is going. The first issue I ran into was how to make these annotations (or something that represents them) available to the client side of the application. I guess my choices are 1- Generators to process annotations during compile to JS 2- Process the annotations on the server side, and pass a POJO that represents the form to some client side form rendering routine. I opted for #2. I imagine you face a pretty similar issue. -Dave --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to Google-Web-Toolkit@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/Google-Web-Toolkit?hl=en -~--~~~~--~~--~--~---
Re: GWT serilization policy issue !!
Hello Olivier, Thanks for the reply, I have seen your code and it extends from RemoteServiceServlet. Thats why you can pass third parameter as this . In my case , the service does not extend from RemoteServiceServlet. The actual defination of my class is public class GWTHandlerAdapter implements HandlerAdapter, ServletContextAware Hence I wont be able to pass third parameter as this to the API RPC.decodeRequest(). It works as per expected if I copy the portion of the code from the RemoteServiceServlet and pasted it into MySerilizationPolicy.java. The code for the same is as follows. RPCRequest rpcRequest = RPC.decodeRequest(requestString, remote_service.getClass(), MySerializationPolicyProvider .getInstance (servletContext, request, response)); (MySerializationPolicyProvider implements SerializationPolicyProvider) My concern is , is this the best way to deal with the scenerio in which service class is not extending from RemoteServiceServlet. Or is there any other way to achive this. Code for MySerializationPolicyProvider is given below which is actually a copied code from RemoteServiceServlet. However problem with this approch is, if in next build of GWT , google made any change in The methodes of RemoteServiceServlet then we also need to include that change in our MySerializationPolicyProvider class . So m looking for some other alternative if at all possible. public class MySerializationPolicyProvider implements SerializationPolicyProvider { /** * A cache of moduleBaseURL and serialization policy strong name to [EMAIL PROTECTED] SerializationPolicy}. */ private ServletContext servletContext; /** ptcSerializationPolicy is used for getting the serialization policy once initialized. */ private SerializationPolicy ptcSerializattionPolicy = null; private final MapString, SerializationPolicy serializationPolicyCache = new HashMapString, SerializationPolicy(); private final ThreadLocalHttpServletRequest perThreadRequest = new ThreadLocalHttpServletRequest(); private final ThreadLocalHttpServletResponse perThreadResponse = new ThreadLocalHttpServletResponse(); private static MySerializationPolicyProvider MySerializationPolicyProviderInstance; private static final org.apache.log4j.Logger log = wt.log4j.LogR.getLogger(MySerializationPolicyProvider.class .getName()); private MySerializationPolicyProvider() { } /** * Constructor for making the class Singelton . * * @param servletContext * @param request * @return response */ private MySerializationPolicyProvider(ServletContext servletContext, HttpServletRequest request, HttpServletResponse response) { this.servletContext = servletContext; perThreadRequest.set(request); perThreadResponse.set(response); } /** * API for getting MySerializationPolicyProvider instance. * * @param servletContext * @param request * @return response */ public static MySerializationPolicyProvider getInstance (ServletContext servletContext, HttpServletRequest request, HttpServletResponse response) { if (MySerializationPolicyProviderInstance == null) MySerializationPolicyProviderInstance = new MySerializationPolicyProvider(servletContext, request, response); return MySerializationPolicyProviderInstance; } /** * API for getting serializationPolicy. * * @param moduleBaseURL * @param strongName */ public SerializationPolicy getSerializationPolicy(String moduleBaseURL, String strongName) { SerializationPolicy serializationPolicy = getCachedSerializationPolicy(moduleBaseURL, strongName); if (serializationPolicy != null) { this.ptcSerializattionPolicy = serializationPolicy; return serializationPolicy; } serializationPolicy = doGetSerializationPolicy (getThreadLocalRequest(), moduleBaseURL, strongName); if (serializationPolicy == null) { // Failed to get the requested serialization policy; use the default serializationPolicy = RPC.getDefaultSerializationPolicy(); } // This could cache null or an actual instance. Either way we will not // attempt to lookup the policy again. putCachedSerializationPolicy(moduleBaseURL, strongName, serializationPolicy); this.ptcSerializattionPolicy = serializationPolicy; return serializationPolicy; } /** * get the cached serialization policy. * * @param moduleBaseURL * @param strongName * @return */ private SerializationPolicy getCachedSerializationPolicy( String moduleBaseURL, String strongName) { synchronized (serializationPolicyCache) { return serializationPolicyCache.get(moduleBaseURL + strongName); } }
Re: For file upload,how to set web.xml in hosted model?
Alex, It sounds like you're running in hosted mode and you are not using the -noserver option. In that case, you'll need to add servlet mappings to your module definition (foo.gwt.xml). These mappings are only used when running hosted mode (without -noserver). You'll still need the web.xml mappings for web mode or for running with the -noserver option. - Isaac On Tue, Nov 11, 2008 at 10:32 PM, Alex Luya [EMAIL PROTECTED] wrote: Hello I have followed thethis link(http://groups.google.com/group/ Google-Web-Toolkit/browse_thread/thread/ 19ea5c6be6d47848/8a4439de9cd48006? lnk=gstq=FancyFileUpload#8a4439de9cd48006) to upload a file,and I am using Cypal,and question is what other work is needed,should I add some entries to Test.xml,or to web.xml,in fact I have added following entries to web.xml: -- servlet servlet-nameFileUploadServlet/servlet-name servlet-class com.tsolution.emc.server.FileUploadServlet/servlet- class /servlet servlet-mapping servlet-nameFileUploadServlet/servlet-name url-pattern/FileUploadServlet/url-pattern /servlet-mapping - but when run hosted model,I got this error: - [ERROR] Unable to find 'FileUploadServlet.gwt.xml' on your classpath; could be a typo, or maybe you forgot to include a classpath entry for source? - By the way,in the class FancyFileUpload.java, --- uploadForm.setAction(Test.getRelativeURL(FileUploadServlet)); and this is Test.java --- public class Test implements EntryPoint { public void onModuleLoad() { FancyFileUpload ffupload = new FancyFileUpload(); RootPanel.get().add(ffupload); } public static final String LOCAL_HOST = http://localhost: /; public static final String REMOTE_HOST = http://localhost: /Test/; public static String getRelativeURL(String url) { String realModuleBase; if (GWT.isScript()) { String moduleBase = GWT.getModuleBaseURL(); // Use for Deployment to production server realModuleBase = REMOTE_HOST; // Use to test compiled browser locally if (moduleBase.indexOf(localhost) != -1) { realModuleBase = LOCAL_HOST; } } else { // This is the URL for GWT Hosted mode realModuleBase = LOCAL_HOST; } return realModuleBase + url; } } --- I added a log informationin servlet,it seemed that servlet did not receive any request from request,so can you tell me where and how to set the servlet mapping for url to servlet,thanks in advanced. --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to Google-Web-Toolkit@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/Google-Web-Toolkit?hl=en -~--~~~~--~~--~--~---
(InternalError): script too large on FF
Does anyone had this error on firefox (windows): compiled in PRETTY mode (file size 1.2Mo): (InternalError): script too large fileName: http://localhost:8080/nc.kroc.fmp.AppMain/F7CD321583D7FFF355626DFABFB302AC.cache.html lineNumber: 4099 stack: $prepareToR same compiled in OBFUSCATED mode (file size 444Ko): (InternalError): script too large fileName: http://localhost:8080/nc.kroc.fmp.AppMain/58FEAEBA24ED94C41276805F8F8BB750.cache.html lineNumber: 444 stack: vub()@:0 eval( in hosted mode and IE script continue running for a while. And it's working with chrome. The only difference with my previous versions which was working, is a library replacement: h4gwt 1.1 - gilead 1.2 (simply a version changed) I didn't notice any script file size changed between the two versions. I found this on mozilla.org (http://www.mozilla.org/js/spidermonkey/ release-notes/JS_150_RC4.html) : Bug 80981 Need extended jump bytecode to avoid script too large errors, etc. We now ReportStatementTooLarge only if: - a jump offset overflows 32 bits, signed; - there are 2**32 or more span dependencies in a script; - a backpatch chain link is more than (2**30 - 1) bytecodes long; - a source note's distance from the last note, or from script main entry point, is 0x7f bytes. So... Is this problem already reported ? Anyone's ideas ? Regards Vincent --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to Google-Web-Toolkit@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/Google-Web-Toolkit?hl=en -~--~~~~--~~--~--~---
Re: GWT 1.5.2
Thanks Tom. I didn't get this part Check your GWT project build path for that jar file and remove it.. What needs to be removed? On Nov 6, 9:28 pm, Tom Hjellming [EMAIL PROTECTED] wrote: I had this same problem last month when I moved to GWT 1.5.2 also. It turned out to be a conflict between GWT's dev library and the Jasper 2 JSP engine which apparently uses the Eclipse JDT Java compiler. The jasper-compiler-jdt.jar had conflicting versions of the org.eclipse.jdt.internal.compiler.Compiler class. Check your GWT project build path for that jar file and remove it. Hope this helps... Tom Deep wrote: I'm using Mac OS 10.5.5 Eclipse 3.3.2 and I migrated my project from GWT 1.4.61 to 1.5.2 and getting following error. Please help me. INFO] [gwt:compile {execution: default}] Exception in thread main java.lang.NoSuchMethodError: org.eclipse.jdt.internal.compiler.Compiler.init(Lorg/eclipse/jdt/ internal/compiler/env/INameEnvironment;Lorg/eclipse/jdt/internal/ compiler/IErrorHandlingPolicy;Lorg/eclipse/jdt/internal/compiler/impl/ CompilerOptions;Lorg/eclipse/jdt/internal/compiler/ ICompilerRequestor;Lorg/eclipse/jdt/internal/compiler/ IProblemFactory;)V at com.google.gwt.dev.javac.JdtCompiler $CompilerImpl.init(JdtCompiler.java:93) at com.google.gwt.dev.javac.JdtCompiler.init(JdtCompiler.java:231) at com.google.gwt.dev.javac.JdtCompiler.compile(JdtCompiler.java:193) at com.google.gwt.dev.javac.CompilationState.compile(CompilationState.java: 115) at com.google.gwt.dev.GWTCompiler.distill(GWTCompiler.java:327) at com.google.gwt.dev.GWTCompiler.run(GWTCompiler.java:564) at com.google.gwt.dev.GWTCompiler.run(GWTCompiler.java:554) at com.google.gwt.dev.GWTCompiler.main(GWTCompiler.java:214) Exception in thread main java.lang.NoSuchMethodError: org.eclipse.jdt.internal.compiler.Compiler.init(Lorg/eclipse/jdt/ internal/compiler/env/INameEnvironment;Lorg/eclipse/jdt/internal/ compiler/IErrorHandlingPolicy;Lorg/eclipse/jdt/internal/compiler/impl/ CompilerOptions;Lorg/eclipse/jdt/internal/compiler/ ICompilerRequestor;Lorg/eclipse/jdt/internal/compiler/ IProblemFactory;)V at com.google.gwt.dev.javac.JdtCompiler $CompilerImpl.init(JdtCompiler.java:93) at com.google.gwt.dev.javac.JdtCompiler.init(JdtCompiler.java:231) at com.google.gwt.dev.javac.JdtCompiler.compile(JdtCompiler.java:193) at com.google.gwt.dev.javac.CompilationState.compile(CompilationState.java: 115) at com.google.gwt.dev.GWTCompiler.distill(GWTCompiler.java:327) at com.google.gwt.dev.GWTCompiler.run(GWTCompiler.java:564) at com.google.gwt.dev.GWTCompiler.run(GWTCompiler.java:554) at com.google.gwt.dev.GWTCompiler.main(GWTCompiler.java:214) Exception in thread main java.lang.NoSuchMethodError: org.eclipse.jdt.internal.compiler.Compiler.init(Lorg/eclipse/jdt/ internal/compiler/env/INameEnvironment;Lorg/eclipse/jdt/internal/ compiler/IErrorHandlingPolicy;Lorg/eclipse/jdt/internal/compiler/impl/ CompilerOptions;Lorg/eclipse/jdt/internal/compiler/ ICompilerRequestor;Lorg/eclipse/jdt/internal/compiler/ IProblemFactory;)V at com.google.gwt.dev.javac.JdtCompiler $CompilerImpl.init(JdtCompiler.java:93) at com.google.gwt.dev.javac.JdtCompiler.init(JdtCompiler.java:231) at com.google.gwt.dev.javac.JdtCompiler.compile(JdtCompiler.java:193) at com.google.gwt.dev.javac.CompilationState.compile(CompilationState.java: 115) at com.google.gwt.dev.GWTCompiler.distill(GWTCompiler.java:327) at com.google.gwt.dev.GWTCompiler.run(GWTCompiler.java:564) at com.google.gwt.dev.GWTCompiler.run(GWTCompiler.java:554) at com.google.gwt.dev.GWTCompiler.main(GWTCompiler.java:214) --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to Google-Web-Toolkit@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/Google-Web-Toolkit?hl=en -~--~~~~--~~--~--~---
Problem with SerializableResponse serialization
I'm using PagingScrollTable from GWT Incubator. And I've wrote small service for data retrieving: public SerializableResponseProjectInfo loadAllProjects(Request request) { ListProject list = projectDao.loadAll(); return new SerializableResponseProjectInfo( convert(list), convertRowsData(list) ); } SerializableResponse class defined as: public static class SerializableResponseR extends Serializable extends ResponseR implements IsSerializable { private CollectionCollectionSerializable rows; / SKIPPED } Response class also contains one field: public abstract static class ResponseR { private ListR rowValues; } The problem is that on my client side I don't see row values which was converted by convertRowsData(list) method. I've taken a look at GWT RPC implementation and found the place where problem is. com.google.gwt.user.server.rpc.impl.SerializabilityUtil, public static Field[] applyFieldSerializationPolicy(Class? clazz) method. invocation of Field[] fields = clazz.getDeclaredFields(); returns only 'rows' field from SerializableResponse class. And skips 'rowValues' field from Response class. This is the reason why rowValues data lost in serialization process. So, how I can avoid this problem? Does it has sense to post the bug? --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to Google-Web-Toolkit@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/Google-Web-Toolkit?hl=en -~--~~~~--~~--~--~---
MenuBar always AutoOpen
I try to set AutoOpen of MenuBar to false assuming it would open only upon click. It does not seem to have any effect. It still opens when mouse hovers around it. --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to Google-Web-Toolkit@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/Google-Web-Toolkit?hl=en -~--~~~~--~~--~--~---
Re: History.newItem not firing onHistoryChanged under IE :-/
Anyone got any other ideas? On Nov 6, 5:56 pm, darkflame [EMAIL PROTECTED] wrote: nope, darnit, still dosnt work. On Nov 3, 10:25 am, Thomas Broyer [EMAIL PROTECTED] wrote: On 2 nov, 15:49, darkflame [EMAIL PROTECTED] wrote: I searched this group, and could only seem to find the opposite problem...people wanting newItem not to fire onHistoryChange, but it does. In my case its firing on all browsers, but for some reason it isn't working on IE (at least, IE6). Anyone got any ideas what could cause this? Your history iframe is named gwt_historyFrame instead of __gwt_historyFrame (missing the two leading underscores) --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to Google-Web-Toolkit@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/Google-Web-Toolkit?hl=en -~--~~~~--~~--~--~---
Re: scroll problem ( keyboard shortcut )
Hi jhpark, I believe the solution you're looking for would involve using a ScrollTable widget along with a KeyboardListener attached to the scroll table. Basically the scroll table would contain the list of items that you wish to scroll through and have a keyboard listener attached that could listen for j or k key presses, and subsequently select the previous / next items displayed in the scroll panel, respectively. Hope that helps, -Sumit Chandel On Sun, Nov 9, 2008 at 2:41 AM, jhpark [EMAIL PROTECTED] wrote: sorry I can't write English well... I have make table. and make keyboard shorrtcut.( like Gmail ) problem if table height is 400px, and panel height is 200px.. then scroll visible.. up arrow and down arrow key input scroll move.. ( up and down ) when I input j key ( Gmail - next row ) scroll down.. when I input k key ( Gmail - prev row ) scroll up please tell me if you know... --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to Google-Web-Toolkit@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/Google-Web-Toolkit?hl=en -~--~~~~--~~--~--~---
NumberConstants and CurrencyData
Hi all! How can I create theses configurations that matches with my country rules? I'm trying to find a way to orverhide de NumberConstants with mine and include my currency definitions in CurrencyList. What is the right way to do this? Thanks! --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to Google-Web-Toolkit@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/Google-Web-Toolkit?hl=en -~--~~~~--~~--~--~---
Theming a custom widget
I have got 3 stylesheets for my widget, standard, dark chrome. When the Standard theme is loaded I want my standard theme applied to my custom widget. My widget applies the custom-widget style - but how do I pick which style sheet to link ? What am I missing here? --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to Google-Web-Toolkit@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/Google-Web-Toolkit?hl=en -~--~~~~--~~--~--~---
Re: Using a common code both at client and server side
Hi Jason, Thank you very much. Correct me if i am wrong. Is this a similar way, to creating a module Jason Essington wrote: sure, and in fact it is quite common to use the same code in both places. The easy way to do this is to consolidate that shared code into a particular package ... something like com.foo.bar.shared Then create a new GWT.xml file com/foo/bar.Shared.gwt.xml and add source path=shared/ your module containing your entry point would then add inherits name=com.foo.bar.Shared/ and your server code would just reference those classes like normal. The trick here is to remember to only place translatable code in com.foo.bar.shared. Since it is going to be compiled to javascript, it will have to abide by all of the rules of client code. -jason On Nov 10, 2008, at 9:47 PM, sriram wrote: Hi, Do we use a common code written in java, that could be used at both the client and server side using gwt. for example, cache a common folder used at both the ends. Thanks, Sriram --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to Google-Web-Toolkit@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/Google-Web-Toolkit?hl=en -~--~~~~--~~--~--~---
Re: Getting Error in GWT RPC Service
Either you are passing an argument of type (com.extjs.gxt.ui.client.data.BasePagingLoadConfig) which is not serializable or you are returning an object of that type from the RPC method. In RPC methods the method argument types and return types must be serializable (implements java.io.Serializable or com.google.gwt.user.client.rpc.IsSerializable) - Litty On Wed, Nov 12, 2008 at 7:51 PM, Sachin [EMAIL PROTECTED] wrote: Hello All, I am getting following error in my RPC service ... can anybody tell me what is the problem ? I am using ExtGWT grid with pagination and loading data through RPC in grid. [ERROR] Uncaught exception escaped java.lang.RuntimeException: com.google.gwt.user.client.rpc.IncompatibleRemoteServiceException: Type 'com.extjs.gxt.ui.client.data.BasePagingLoadConfig' was not assignable to 'com.google.gwt.user.client.rpc.IsSerializable' and did not have a custom field serializer. For security purposes, this type will not be deserialized. at com.extjs.gxt.ui.client.store.ListStore.onLoadException (ListStore.java:184) at com.extjs.gxt.ui.client.store.ListStore$1.loaderLoadException (ListStore.java:135) at com.extjs.gxt.ui.client.event.LoadListener.handleEvent (LoadListener.java:27) at com.extjs.gxt.ui.client.event.LoadListener.handleEvent (LoadListener.java:1) at com.extjs.gxt.ui.client.event.BaseObservable.fireEvent (BaseObservable.java:74) at com.extjs.gxt.ui.client.data.BaseLoader.onLoadFailure (BaseLoader.java:155) at com.extjs.gxt.ui.client.data.BaseLoader$1.onFailure (BaseLoader.java:115) at com.extjs.gxt.ui.client.data.RpcProxy$1.onFailure(RpcProxy.java: 22) at com.google.gwt.user.client.rpc.impl.RequestCallbackAdapter.onResponseReceived (RequestCallbackAdapter.java:217) at com.google.gwt.http.client.Request.fireOnResponseReceivedImpl (Request.java:254) at com.google.gwt.http.client.Request.fireOnResponseReceivedAndCatch (Request.java:226) at com.google.gwt.http.client.Request.fireOnResponseReceived (Request.java:217) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at com.google.gwt.dev.shell.MethodAdaptor.invoke(MethodAdaptor.java: 103) at com.google.gwt.dev.shell.ie.IDispatchImpl.callMethod (IDispatchImpl.java:126) at com.google.gwt.dev.shell.ie.IDispatchProxy.invoke (IDispatchProxy.java:155) at com.google.gwt.dev.shell.ie.IDispatchImpl.Invoke (IDispatchImpl.java:294) at com.google.gwt.dev.shell.ie.IDispatchImpl.method6 (IDispatchImpl.java:194) at org.eclipse.swt.internal.ole.win32.COMObject.callback6 (COMObject.java:117) at org.eclipse.swt.internal.win32.OS.DispatchMessageW(Native Method) at org.eclipse.swt.internal.win32.OS.DispatchMessage(OS.java:1925) at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2966) at com.google.gwt.dev.GWTShell.pumpEventLoop(GWTShell.java:720) at com.google.gwt.dev.GWTShell.run(GWTShell.java:593) at com.google.gwt.dev.GWTShell.main(GWTShell.java:357) Caused by: com.google.gwt.user.client.rpc.IncompatibleRemoteServiceException: Type 'com.extjs.gxt.ui.client.data.BasePagingLoadConfig' was not assignable to 'com.google.gwt.user.client.rpc.IsSerializable' and did not have a custom field serializer. For security purposes, this type will not be deserialized. at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source) at java.lang.reflect.Constructor.newInstance(Unknown Source) at com.google.gwt.dev.shell.MethodAdaptor.invoke(MethodAdaptor.java: 105) at com.google.gwt.dev.shell.ie.IDispatchImpl.callMethod (IDispatchImpl.java:126) at com.google.gwt.dev.shell.ie.IDispatchProxy.invoke (IDispatchProxy.java:155) at com.google.gwt.dev.shell.ie.IDispatchImpl.Invoke (IDispatchImpl.java:294) at com.google.gwt.dev.shell.ie.IDispatchImpl.method6 (IDispatchImpl.java:194) at org.eclipse.swt.internal.ole.win32.COMObject.callback6 (COMObject.java:117) at org.eclipse.swt.internal.ole.win32.COM.VtblCall(Native Method) at org.eclipse.swt.internal.ole.win32.IDispatch.Invoke(IDispatch.java: 64) at org.eclipse.swt.ole.win32.OleAutomation.invoke(OleAutomation.java: 493) at org.eclipse.swt.ole.win32.OleAutomation.invoke(OleAutomation.java: 417) at com.google.gwt.dev.shell.ie.ModuleSpaceIE6.doInvokeOnWindow (ModuleSpaceIE6.java:67) at com.google.gwt.dev.shell.ie.ModuleSpaceIE6.doInvoke (ModuleSpaceIE6.java:152)
Re: Trouble Integrating single component page into existing j2ee application
This is a common problem for new GWT users - it's important to realize that GWT code can only use classes which are part of GWT modules. Any code outside of that, or which it doesn't have any source code for, will cause this error. You'll just have to work around it like the rest of us - it can result in some awkward reversals, like creating a shared interface which is only implemented on the server, and a static field with a pointer to that interface, and then storing your implementation into that static variable on the server side. The implementation then wraps up any non-GWT supported funcationality. On Nov 12, 11:30 am, Bliss [EMAIL PROTECTED] wrote: I have created a single page using a GWT component and a class that acts as a 'bridge' between my business code and the front end component. I isolated all the GWT code into a separate package structure for ease- and included it in my application with no troubles,when it doesnt reference any other packages. However, in real life- I need my 'bridge' code to import classes from other packages in my J2ee application, and am having issues. I have com.mygwtpackage.myGWTProject inherit com.mypackage.myClass - module !-- Inherit the core Web Toolkit stuff. -- inherits name='com.google.gwt.user.User'/ !-- Other module inherits -- inherits name='com.gwtext.GwtExt' / inherits name='com.mypackage.myClass' / !-- Specify the app entry point class. -- entry-point class='com.myGwtpackage.client.myGwtProject'/ !-- Specify the application specific style sheet. -- stylesheet src=js/ext/resources/css/ext-all.css / script src=js/ext/adapter/ext/ext-base.js / script src=js/ext/ext-all.js / /module - I have included com.mypackage.myClass.class com.mypackage.myClass.java and myClass.gwt.xml ?xml version=1.0 encoding=UTF-8? module !-- Inherit -- inherits name='com.google.gwt.user.User'/ source path=./ /module - in a jar file included in com.mypackage.myGWTProject/lib I have added this jar reference to the .compile and .shell files. I am having trouble compiling since I get : Loading module 'com.myGwtpackage.myGwtClass' Loading inherited module 'com.mypackage.myClass' [WARN] Non-canonical source package: ./ Removing units with errors [ERROR] Errors in 'file:/C:/path/path/src/com/myGwtPackage/client/ MyTree.java' [ERROR] Line 92: No source code is available for type com.mypackage.myClass; did you forget to inherit a required module? Removing invalidated units [WARN] Compilation unit 'file:/C:/path/src/com/myGwtpackage/client/ myGwtClass.java' is remo ved due to invalid reference(s): [WARN] file:/C:/path/src/com/myGwtpackage/client/MyTree.java Compiling module com.myGwtpackage.myGwtClass Computing all possible rebind results for 'com.myGwtpackage.client.myGwtClass' Rebinding com.myGwtpackage.client.myGwtClass Checking rule generate-with class='com.google.gwt.user.rebind.ui.ImageBun dleGenerator'/ [ERROR] Unable to find type 'com.myGwtpackage.client.myGwtClass [ERROR] Hint: Previous compiler errors may have made this type unava ilable [ERROR] Hint: Check the inheritance chain from your module; it may n ot be inheriting a required module or a module may not be adding its source path entries properly [ERROR] Build failed --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to Google-Web-Toolkit@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/Google-Web-Toolkit?hl=en -~--~~~~--~~--~--~---
Re: GWT 1.5.2
I found the conflicting class in these jar files: - jasper-compiler-jdt.jar - jasper-jdt.jar The jasper-jdt.jar is a standard jar file shipped with Tomcat 6.0 in the lib directory. Once I removed those jar files from my classpath, the problem went away for me. Tom Deep wrote: Thanks Tom. I didn't get this part Check your GWT project build path for that jar file and remove it.. What needs to be removed? On Nov 6, 9:28 pm, Tom Hjellming [EMAIL PROTECTED] wrote: I had this same problem last month when I moved to GWT 1.5.2 also. It turned out to be a conflict between GWT's dev library and the Jasper 2 JSP engine which apparently uses the Eclipse JDT Java compiler. The jasper-compiler-jdt.jar had conflicting versions of the org.eclipse.jdt.internal.compiler.Compiler class. Check your GWT project build path for that jar file and remove it. Hope this helps... Tom Deep wrote: I'm using Mac OS 10.5.5 Eclipse 3.3.2 and I migrated my project from GWT 1.4.61 to 1.5.2 and getting following error. Please help me. INFO] [gwt:compile {execution: default}] Exception in thread main java.lang.NoSuchMethodError: org.eclipse.jdt.internal.compiler.Compiler.init(Lorg/eclipse/jdt/ internal/compiler/env/INameEnvironment;Lorg/eclipse/jdt/internal/ compiler/IErrorHandlingPolicy;Lorg/eclipse/jdt/internal/compiler/impl/ CompilerOptions;Lorg/eclipse/jdt/internal/compiler/ ICompilerRequestor;Lorg/eclipse/jdt/internal/compiler/ IProblemFactory;)V at com.google.gwt.dev.javac.JdtCompiler $CompilerImpl.init(JdtCompiler.java:93) at com.google.gwt.dev.javac.JdtCompiler.init(JdtCompiler.java:231) at com.google.gwt.dev.javac.JdtCompiler.compile(JdtCompiler.java:193) at com.google.gwt.dev.javac.CompilationState.compile(CompilationState.java: 115) at com.google.gwt.dev.GWTCompiler.distill(GWTCompiler.java:327) at com.google.gwt.dev.GWTCompiler.run(GWTCompiler.java:564) at com.google.gwt.dev.GWTCompiler.run(GWTCompiler.java:554) at com.google.gwt.dev.GWTCompiler.main(GWTCompiler.java:214) Exception in thread main java.lang.NoSuchMethodError: org.eclipse.jdt.internal.compiler.Compiler.init(Lorg/eclipse/jdt/ internal/compiler/env/INameEnvironment;Lorg/eclipse/jdt/internal/ compiler/IErrorHandlingPolicy;Lorg/eclipse/jdt/internal/compiler/impl/ CompilerOptions;Lorg/eclipse/jdt/internal/compiler/ ICompilerRequestor;Lorg/eclipse/jdt/internal/compiler/ IProblemFactory;)V at com.google.gwt.dev.javac.JdtCompiler $CompilerImpl.init(JdtCompiler.java:93) at com.google.gwt.dev.javac.JdtCompiler.init(JdtCompiler.java:231) at com.google.gwt.dev.javac.JdtCompiler.compile(JdtCompiler.java:193) at com.google.gwt.dev.javac.CompilationState.compile(CompilationState.java: 115) at com.google.gwt.dev.GWTCompiler.distill(GWTCompiler.java:327) at com.google.gwt.dev.GWTCompiler.run(GWTCompiler.java:564) at com.google.gwt.dev.GWTCompiler.run(GWTCompiler.java:554) at com.google.gwt.dev.GWTCompiler.main(GWTCompiler.java:214) Exception in thread main java.lang.NoSuchMethodError: org.eclipse.jdt.internal.compiler.Compiler.init(Lorg/eclipse/jdt/ internal/compiler/env/INameEnvironment;Lorg/eclipse/jdt/internal/ compiler/IErrorHandlingPolicy;Lorg/eclipse/jdt/internal/compiler/impl/ CompilerOptions;Lorg/eclipse/jdt/internal/compiler/ ICompilerRequestor;Lorg/eclipse/jdt/internal/compiler/ IProblemFactory;)V at com.google.gwt.dev.javac.JdtCompiler $CompilerImpl.init(JdtCompiler.java:93) at com.google.gwt.dev.javac.JdtCompiler.init(JdtCompiler.java:231) at com.google.gwt.dev.javac.JdtCompiler.compile(JdtCompiler.java:193) at com.google.gwt.dev.javac.CompilationState.compile(CompilationState.java: 115) at com.google.gwt.dev.GWTCompiler.distill(GWTCompiler.java:327) at com.google.gwt.dev.GWTCompiler.run(GWTCompiler.java:564) at com.google.gwt.dev.GWTCompiler.run(GWTCompiler.java:554) at com.google.gwt.dev.GWTCompiler.main(GWTCompiler.java:214) --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to Google-Web-Toolkit@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/Google-Web-Toolkit?hl=en -~--~~~~--~~--~--~---
Re: Dynamic UI in GWT
You could probably invent your own system, but it might be a fairly advanced task. If you really need seperate compilation between the modules then you'll have to first create your own inter-module communication system using javascript and JSNI, maybe a simple publish- subscribe system would work well. Then, you can implement each module so that on load it subscribes to certain events and automatically attaches its widgets to right part of the DOM when necessary. You'll be losing much of the benefits of GWT here - you might be better off using a completely different AJAX toolkit that already supports modularization. If you're just talking about having a dynamically generated UI, and not seperate compilation of modules, then an approach for this would be, as you said, some kind of declarative UI. I suggest just using DOM as the declaration - your UI pieces can attach to the DOM based on XPath when they load, or at specific times. Think along the lines of RootPanel.get(...) except you may need more complexity. On Nov 12, 5:35 am, Antoine [EMAIL PROTECTED] wrote: Hi, I’m currently learning GWT in order to be able to create a prototype of our new application. My main issue is the following: we need a dynamic application like an OSGi-based one or SOA-based. The goal is to have several module/package and each one defines its UI. It’s pretty much like Eclipse does but in a Web application. I try to look at different ways to do that. First using OSGi and stuff: Ooops I forgot the compilation… Then I though about on-the-fly compilation since the compiler is in Java, so it can be called from Java, when the user drop a module. Even though this can be interesting and fun to develop it’s not a practical solution, too many constraints. Then I was left with my last choice: declarative UI where the UI is defined in some kind of XML file and instantiate in the client side like any other lazy UI but I didn’t find a satisfying library. I’m looking for feed back on any experience you might have in that area: dynamic UI over several modules. If you have interesting reading/ link/libraries that can help me that would be terrific too. Also, I’m open to any other solution that might fill our need of modular application. Thanks a lot in advance, Antoine. --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to Google-Web-Toolkit@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/Google-Web-Toolkit?hl=en -~--~~~~--~~--~--~---
Re: How can I find address of the server?
Use GWT.getHostPageBaseURL() or GWT.getModuleBaseURL() to find the URL you came from. Simple string manipulations should get you everything else you need. Another option is Window.Location which tells you the current host, port, etc.. And ... read the manuals? This information isn't that hard to find, is it ? On Nov 12, 7:19 am, Marian Jancar [EMAIL PROTECTED] wrote: Hi, I'm trying to use GWT to create a web interface for wireless embedded devices, and due to space constrains I can't use Java on server side and have to go with HTTP requests. How can I find the server address in GWT? Best Regards, Marian --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to Google-Web-Toolkit@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/Google-Web-Toolkit?hl=en -~--~~~~--~~--~--~---
Re: Date comparison not working
Read the Date documentation - the numbers you are passing in for cutOffDate are not being treated how you expect them to. For example, the year value is relative to 1900, so the actual year of your cutOffDate is 3901. The month is zero-relative so you're specifying July, which you probably were not expecting. It's stupid but that's the java Date APIs for you! On Nov 12, 4:36 am, rick_g [EMAIL PROTECTED] wrote: I'm trying to do a simple date comparison in GWT 1.5, and its not working. Here's my code: Date cutOffDate = new Date(2001, 6, 12); Date inputDate = dfApprovalDate.getValue(); if (inputDate.after(cutOffDate)){ //do something} else { //do something else } When I enter an input date of today (12 Nov 2008), it goes into the else block. Testing in hosted mode. Any ideas, alternatives? --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to Google-Web-Toolkit@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/Google-Web-Toolkit?hl=en -~--~~~~--~~--~--~---
Interpreting stack traces from Firefox
When I get an unhandled exception in firefox, it's nice enough to give me a stack trace, which is great. What would be greater is a way to get some clues as to what method that stack trace could be referring to. In this case I figured it out based on the number and type of the parameters, but I can only distinguish between array, boolean, and objects. I wonder if there's a way to get these stack traces to show the GWT type of the object? Maybe a hook into Firefox or something? (TypeError): a has no properties fileName: https://www.clarityaccounting.com/app/8CBBE1DA541CBDBE038479D842F6BE54.cache.html lineNumber: 13152 stack: iml(null)@https://www.clarityaccounting.com/app/ 8CBBE1DA541CBDBE038479D842F6BE54.cache.html:13152 cwl([object Object],[object Array],[object Array],true,[object Object], [object Object])@https://www.clarityaccounting.com/app/ 8CBBE1DA541CBDBE038479D842F6BE54.cache.html:13326 vHi([object Object],[object Object])@https://www.clarityaccounting.com/ app/8CBBE1DA541CBDBE038479D842F6BE54.cache.html:2116 DAi(null)@https://www.clarityaccounting.com/app/ 8CBBE1DA541CBDBE038479D842F6BE54.cache.html:9057 w9n([object Object])@https://www.clarityaccounting.com/app/ 8CBBE1DA541CBDBE038479D842F6BE54.cache.html:14878 A9n([object Object])@https://www.clarityaccounting.com/app/ 8CBBE1DA541CBDBE038479D842F6BE54.cache.html:14882 tAi([object Array])@https://www.clarityaccounting.com/app/ 8CBBE1DA541CBDBE038479D842F6BE54.cache.html:9049 E3n()@https://www.clarityaccounting.com/app/ 8CBBE1DA541CBDBE038479D842F6BE54.cache.html:14755 rxn([object Object],1226529434516)@https://www.clarityaccounting.com/ app/8CBBE1DA541CBDBE038479D842F6BE54.cache.html:14070 Fwn()@https://www.clarityaccounting.com/app/ 8CBBE1DA541CBDBE038479D842F6BE54.cache.html:14083 jzn([object Object])@https://www.clarityaccounting.com/app/ 8CBBE1DA541CBDBE038479D842F6BE54.cache.html:67 izn([object Object],[object Object])@https://www.clarityaccounting.com/ app/8CBBE1DA541CBDBE038479D842F6BE54.cache.html:66 qzn()@https://www.clarityaccounting.com/app/ 8CBBE1DA541CBDBE038479D842F6BE54.cache.html:72 (11)@https://www.clarityaccounting.com/app/ 8CBBE1DA541CBDBE038479D842F6BE54.cache.html:71 @:0 --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to Google-Web-Toolkit@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/Google-Web-Toolkit?hl=en -~--~~~~--~~--~--~---
Works on compile and browse but not while compiling
Hi , I keep getting this error when I try to compile my gwt application. i.e. by using the app-compile.cmd command line option. Loading inherited module 'org.zenika.widget.DatePickerModule?' ERROR? Unable to find 'org/zenika/widget/ DatePickerModule?.gwt.xml' on your classpath; could be a typo, or maybe you forgot to include a classpath entry for source? I have inherited DatePicker? in my apps gwt.xml inherits name=org.zenika.widget.DatePickerModule / In my classpath I have date picker entry classpathentry kind=lib path=lib/gwt-datepicker-r29.jar/ And in my lib folder I have the gwt-datepicker-r29.jar file. At the same time when I use the compile and browse option it works fine. Could anybody let me know what exactly does compile and browse do. I cannot figure what could be the problem. Any help would be great . regards, Cherian --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to Google-Web-Toolkit@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/Google-Web-Toolkit?hl=en -~--~~~~--~~--~--~---
Re: GWT serilization policy issue !!
Thanks Olivier, That really helps. Thanks a lot --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to Google-Web-Toolkit@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/Google-Web-Toolkit?hl=en -~--~~~~--~~--~--~---
Re: How can I find address of the server?
I said to myselfNoOooOO...there has to be more than what the title says now i'm , :( .. +1 RTFM. :) On Nov 13, 6:36 am, Dobes [EMAIL PROTECTED] wrote: Use GWT.getHostPageBaseURL() or GWT.getModuleBaseURL() to find the URL you came from. Simple string manipulations should get you everything else you need. Another option is Window.Location which tells you the current host, port, etc.. And ... read the manuals? This information isn't that hard to find, is it ? On Nov 12, 7:19 am, Marian Jancar [EMAIL PROTECTED] wrote: Hi, I'm trying to use GWT to create a web interface for wireless embedded devices, and due to space constrains I can't use Java on server side and have to go with HTTP requests. How can I find the server address in GWT? Best Regards, Marian --~--~-~--~~~---~--~~ You received this message because you are subscribed to the Google Groups Google Web Toolkit group. To post to this group, send email to Google-Web-Toolkit@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/Google-Web-Toolkit?hl=en -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit] [EMAIL PROTECTED] commented on branch /branches/1_6_clean_events.
[google-web-toolkit] [EMAIL PROTECTED] commented on branch /branches/1_6_clean_events. Details are at http://code.google.com/p/google-web-toolkit/source/branch?spec=issue3083branch=%2Fbranches%2F1_6_clean_events General Comment: OpenEvent: http://code.google.com/p/google-web-toolkit/source/browse/branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/OpenEvent.java?spec=issue3083amp;r=3969 Line-by-line comments: File: /branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/OpenEvent.java (r3969) === Line 37:* @param S The event source. --- remove periods at the end. Line 38:* @param source the source of the handlers. Must have open handlers and a --- Similar comment to other classes of this genre. Line 66: private T target; --- It's not clear to me what the target is for this event. Also, target could be final so that it can be a construction time invariant. Line 69:* Constructor. Should only be used by subclasses, almost always for testing. --- Same comment as BeforeSelectionEvent. Respond to these comments at http://code.google.com/p/google-web-toolkit/source/branch?spec=issue3083branch=%2Fbranches%2F1_6_clean_events -- You received this message because you starred this review, or because your project has directed all notifications to a mailing list that you subscribe to. You may adjust your review notification preferences at: http://code.google.com/hosting/settings --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit] [EMAIL PROTECTED] commented on branch /branches/1_6_clean_events.
[google-web-toolkit] [EMAIL PROTECTED] commented on branch /branches/1_6_clean_events. Details are at http://code.google.com/p/google-web-toolkit/source/branch?spec=issue3083branch=%2Fbranches%2F1_6_clean_events General Comment: ResizeEvent: http://code.google.com/p/google-web-toolkit/source/browse/branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/ResizeEvent.java?spec=issue3083amp;r=3969 Line-by-line comments: File: /branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/ResizeEvent.java (r3969) === Line 36:* @param source the source of the handlers. Must have resize handlers and a --- @params should be a single sentence fragment. Line 64: private int width; --- These could be final. Respond to these comments at http://code.google.com/p/google-web-toolkit/source/branch?spec=issue3083branch=%2Fbranches%2F1_6_clean_events -- You received this message because you starred this review, or because your project has directed all notifications to a mailing list that you subscribe to. You may adjust your review notification preferences at: http://code.google.com/hosting/settings --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit] [EMAIL PROTECTED] commented on branch /branches/1_6_clean_events.
[google-web-toolkit] [EMAIL PROTECTED] commented on branch /branches/1_6_clean_events. Details are at http://code.google.com/p/google-web-toolkit/source/branch?spec=issue3083branch=%2Fbranches%2F1_6_clean_events General Comment: SelectionEvent: http://code.google.com/p/google-web-toolkit/source/browse/branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/SelectionEvent.java?spec=issue3083amp;r=3969 Line-by-line comments: File: /branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/SelectionEvent.java (r3969) === Line 37:* @param S The event source. --- @param should be a fragment. Line 66: private I selectedItem; --- selectedItem could be final Line 69:* Constructor. Should only be used by subclasses, almost always for testing. --- Same comment as BeforeSelectionEvent. Respond to these comments at http://code.google.com/p/google-web-toolkit/source/branch?spec=issue3083branch=%2Fbranches%2F1_6_clean_events -- You received this message because you starred this review, or because your project has directed all notifications to a mailing list that you subscribe to. You may adjust your review notification preferences at: http://code.google.com/hosting/settings --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit] [EMAIL PROTECTED] commented on branch /branches/1_6_clean_events.
[google-web-toolkit] [EMAIL PROTECTED] commented on branch /branches/1_6_clean_events. Details are at http://code.google.com/p/google-web-toolkit/source/branch?spec=issue3083branch=%2Fbranches%2F1_6_clean_events General Comment: DefaultHandlerRegistration: http://code.google.com/p/google-web-toolkit/source/browse/branches/1_6_clean_events/user/src/com/google/gwt/event/shared/DefaultHandlerRegistration.java?spec=issue3083amp;r=3987 Line-by-line comments: File: /branches/1_6_clean_events/user/src/com/google/gwt/event/shared/DefaultHandlerRegistration.java (r3987) === Line 23: public class DefaultHandlerRegistration implements HandlerRegistration { --- I outlined an evil plan to make this a nested class of HandlerManager. The comment is in HandlerManager feedback. I don't know if it's possible but it seemed like it was worth considering. Line 25: private HandlerManager manager; --- These can all be final. Respond to these comments at http://code.google.com/p/google-web-toolkit/source/branch?spec=issue3083branch=%2Fbranches%2F1_6_clean_events -- You received this message because you starred this review, or because your project has directed all notifications to a mailing list that you subscribe to. You may adjust your review notification preferences at: http://code.google.com/hosting/settings --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit] [EMAIL PROTECTED] commented on branch /branches/1_6_clean_events.
[google-web-toolkit] [EMAIL PROTECTED] commented on branch /branches/1_6_clean_events. Details are at http://code.google.com/p/google-web-toolkit/source/branch?spec=issue3083branch=%2Fbranches%2F1_6_clean_events General Comment: Random comment in Widget: http://code.google.com/p/google-web-toolkit/source/browse/branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/Widget.java?spec=issue3083amp;r=4019 Line-by-line comments: File: /branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/Widget.java (r4019) === Line 148: if (type != null) { --- Seems like type == null should be an invalid input to this method. Respond to these comments at http://code.google.com/p/google-web-toolkit/source/branch?spec=issue3083branch=%2Fbranches%2F1_6_clean_events -- You received this message because you starred this review, or because your project has directed all notifications to a mailing list that you subscribe to. You may adjust your review notification preferences at: http://code.google.com/hosting/settings --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit] [EMAIL PROTECTED] commented on revision rue3083.
[google-web-toolkit] [EMAIL PROTECTED] commented on revision rue3083. Details are at http://code.google.com/p/google-web-toolkit/source/detail?r=ue3083 General Comment: Is this change r3963 (which seems to be a swatch of changes from releases/1.6) going to make it hard to merge this back? Respond to these comments at http://code.google.com/p/google-web-toolkit/source/detail?r=ue3083 -- You received this message because you starred this review, or because your project has directed all notifications to a mailing list that you subscribe to. You may adjust your review notification preferences at: http://code.google.com/hosting/settings --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit] [EMAIL PROTECTED] commented on revision rue3083.
[google-web-toolkit] [EMAIL PROTECTED] commented on revision rue3083. Details are at http://code.google.com/p/google-web-toolkit/source/detail?r=ue3083 General Comment: Is this change r3963 (which seems to be a swatch of changes from releases/1.6) going to make it hard to merge this back? Respond to these comments at http://code.google.com/p/google-web-toolkit/source/detail?r=ue3083 -- You received this message because you starred this review, or because your project has directed all notifications to a mailing list that you subscribe to. You may adjust your review notification preferences at: http://code.google.com/hosting/settings --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit] [EMAIL PROTECTED] commented on branch /branches/1_6_clean_events.
[google-web-toolkit] [EMAIL PROTECTED] commented on branch /branches/1_6_clean_events. Details are at http://code.google.com/p/google-web-toolkit/source/branch?spec=issue3083branch=%2Fbranches%2F1_6_clean_events General Comment: ListenerWrapper: http://code.google.com/p/google-web-toolkit/source/browse/branches/1_6_clean_events/user/src/com/google/gwt/user/client/ListenerWrapper.java?spec=issue3083amp;r=4020 Line-by-line comments: File: /branches/1_6_clean_events/user/src/com/google/gwt/user/client/ListenerWrapper.java (r4020) === Line 36: * @see com.google.gwt.user.L --- Is this @see still correct? Line 40: abstract class ListenerWrapperT implements EventHandler { --- Isn't this a ListenerAdapter since it translates listeners into handlers? I don't feel strongly either way. Also, I left a comment in HandlerManager asking if it's possible for these to keep references to their removers rather than keeping a listeners as that could allows us to get rid of HandlerManager.removeHandler. Respond to these comments at http://code.google.com/p/google-web-toolkit/source/branch?spec=issue3083branch=%2Fbranches%2F1_6_clean_events -- You received this message because you starred this review, or because your project has directed all notifications to a mailing list that you subscribe to. You may adjust your review notification preferences at: http://code.google.com/hosting/settings --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit] [EMAIL PROTECTED] commented on branch /branches/1_6_clean_events.
[google-web-toolkit] [EMAIL PROTECTED] commented on branch /branches/1_6_clean_events. Details are at http://code.google.com/p/google-web-toolkit/source/branch?spec=issue3083branch=%2Fbranches%2F1_6_clean_events General Comment: AbstractLocalizableImplCreator: http://code.google.com/p/google-web-toolkit/source/browse/branches/1_6_clean_events/user/src/com/google/gwt/i18n/rebind/AbstractLocalizableImplCreator.java?spec=issue3083amp;r=3963 Line-by-line comments: File: /branches/1_6_clean_events/user/src/com/google/gwt/i18n/rebind/AbstractLocalizableImplCreator.java (r3963) === Line 18: import static com.google.gwt.i18n.rebind.AnnotationUtil.getClassAnnotation; --- Is this change related to the 1.6 events? Respond to these comments at http://code.google.com/p/google-web-toolkit/source/branch?spec=issue3083branch=%2Fbranches%2F1_6_clean_events -- You received this message because you starred this review, or because your project has directed all notifications to a mailing list that you subscribe to. You may adjust your review notification preferences at: http://code.google.com/hosting/settings --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit commit] r4023 - branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared
Author: [EMAIL PROTECTED] Date: Wed Nov 12 07:52:20 2008 New Revision: 4023 Modified: branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/CloseEvent.java branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/OpenEvent.java branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/SelectionEvent.java branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/ValueChangeEvent.java Log: Removing stray . from source param javadoc. Modified: branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/CloseEvent.java == --- branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/CloseEvent.java (original) +++ branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/CloseEvent.java Wed Nov 12 07:52:20 2008 @@ -34,7 +34,7 @@ * Fires a close event on all registered handlers in the handler manager. * * @param T the target type - * @param S The event source. + * @param S The event source * @param source the source of the handlers. Must have close handlers and a * handler manager. * @param target the target @@ -57,7 +57,7 @@ * Fires a close event on all registered handlers in the handler manager. * * @param T the target type - * @param S The event source. + * @param S The event source * @param source the source of the handlers. Must have close handlers and a * handler manager. * @param target the target Modified: branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/OpenEvent.java == --- branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/OpenEvent.java (original) +++ branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/OpenEvent.java Wed Nov 12 07:52:20 2008 @@ -34,7 +34,7 @@ * Fires a open event on all registered handlers in the handler manager. * * @param T the target type - * @param S The event source. + * @param S The event source * @param source the source of the handlers. Must have open handlers and a * handler manager. * @param target the target Modified: branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/SelectionEvent.java == --- branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/SelectionEvent.java (original) +++ branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/SelectionEvent.java Wed Nov 12 07:52:20 2008 @@ -34,7 +34,7 @@ * Fires a selection event on all registered handlers in the handler manager. * * @param I the selected item type - * @param S The event source. + * @param S The event source * @param source the source of the handlers. Must have selection handlers and * a handler manager. * @param selectedItem the selected item Modified: branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/ValueChangeEvent.java == --- branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/ValueChangeEvent.java (original) +++ branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/ValueChangeEvent.java Wed Nov 12 07:52:20 2008 @@ -35,7 +35,7 @@ * manager. * * @param I the old value type - * @param S The event source. + * @param S The event source * @param source the source of the handlers. Must have value change handlers * and a handler manager. * @param value the value @@ -58,7 +58,7 @@ * safe handling of null. * * @param I the old value type - * @param S The event source. + * @param S The event source * @param source the source of the handlers. Must have value change handlers * and a handler manager. * @param oldValue the oldValue, may be null --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit commit] r4024 - branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared
Author: [EMAIL PROTECTED] Date: Wed Nov 12 08:12:32 2008 New Revision: 4024 Modified: branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/BeforeSelectionEvent.java Log: Tweaks to javadoc. Modified: branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/BeforeSelectionEvent.java == --- branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/BeforeSelectionEvent.java (original) +++ branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/BeforeSelectionEvent.java Wed Nov 12 08:12:32 2008 @@ -33,17 +33,17 @@ /** * Fires a before selection event on all registered handlers in the handler - * manager. + * manager. If no such handlers exist, this method will do nothing. * * @param I the item type - * @param S The event source. - * @param source the source of the handlers. Must have before selection - * handlers and a handler manager. + * @param S The event source type + * @param source the source of the handlers * @param item the item * @return the event so that the caller can check if it was canceled */ public static I, S extends HasBeforeSelectionHandlersI HasHandlers BeforeSelectionEventI fire( S source, I item) { +// If no handlers exist, then type can be null. if (TYPE != null) { HandlerManager handlers = source.getHandlers(); if (handlers != null) { @@ -57,7 +57,7 @@ } /** - * Gets the abstract type associated with this event. + * Gets the type associated with this event. * * @return returns the handler type */ @@ -73,7 +73,7 @@ private boolean canceled; /** - * Constructor. Should only be used by subclasses, almost always for testing. + * Creates a new before selection event. */ protected BeforeSelectionEvent() { } @@ -99,7 +99,7 @@ * * @return is canceled */ - public boolean isCanceled() { + public final boolean isCanceled() { return canceled; } @@ -108,8 +108,8 @@ handler.onBeforeSelection(this); } - // Because of type erasure, our static type is - // wild carded, yet the real type should use our I param. + // The instance knows its BeforeSelectionHandler is of type I, but the TYPE + // field itself does not, so we have to do an unsafe cast here. @SuppressWarnings(unchecked) @Override protected TypeBeforeSelectionHandlerI getAssociatedType() { --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] Re: adds 6 new visualizations
I just uploaded a new patch. let me know what you think. http://galgwt-reviews.appspot.com/203/diff/803/807 File visualization/src/com/google/gwt/visualization/client/visualizations/PieChart.java (right): http://galgwt-reviews.appspot.com/203/diff/803/807#newcode32 Line 32: * Classic Pie Chart visualization. 99% inspiration, 1% genius. May be loaded I guess it's not that funny after all.. (you know, percentages, pie charts, no persperation required...) oh well, this is what code reviews are for. http://galgwt-reviews.appspot.com/203 --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit] [EMAIL PROTECTED] commented on branch /branches/1_6_clean_events.
[google-web-toolkit] [EMAIL PROTECTED] commented on branch /branches/1_6_clean_events. Details are at http://code.google.com/p/google-web-toolkit/source/branch?spec=issue3083branch=%2Fbranches%2F1_6_clean_events Line-by-line comments: File: /branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/BeforeSelectionEvent.java (r3969) === Line 42:* @param item the item --- Yep, I think we can in general. Line 48: HandlerManager handlers = source.getHandlers(); --- Nope, it is perfectly legitimate to call fire here with no handlers, will add comment to that effect. Line 77:*/ --- Also used for subclasses though, so I'd hate to lie. How about just quot;Create a new before selection event. Line 114: @Override --- The problem is actually not the H type, that one works perfectly and prevents anyone from adding a handler receiver of the wrong type, which is good because we use an unsafe cast to dispatch it. The problem is the actual selected item wild car type. I'll try to add a better comment. File: /branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/SelectionEvent.java (r3969) === Line 38:* @param source the source of the handlers. Must have selection handlers and --- yep. Line 67: --- Not long term, as selection events may also be recycled. File: /branches/1_6_clean_events/user/src/com/google/gwt/event/shared/DefaultHandlerRegistration.java (r3987) === Line 24: --- We figured we could optimize this later, as we'd still want to give people a default version that is not an inner class. Line 27: private Type? type; --- Yep. File: /branches/1_6_clean_events/user/src/com/google/gwt/event/shared/HandlerManager.java (r4006) === Line 41: return event.isLive(); --- So people can create aux. event management systems. However, the consumers for the events should not care about isLive() so the method is hidden from them. Line 50: if (event.isLive() == false) { --- See above comment for why make the public version exists, same logic. Line 60: } --- With the two registries moving inside the handler manager, does this still bother you? Line 65: // Only one of JsHandlerRegistry and JavaHandlerRegistry are live at once. --- yes, they are parts. Only reason they are not in the class is because of size, we can move them. Line 77: --- Yep, so either we need full command objects or copy on concurrent write. Line 87: } else { --- It seemed to be removing it when I inspected the code, but that may be fragile, so I agree that we should not touch it instead. Line 134: if (useJs) { --- widgets used to be able to simply throw away their listener collections away. Reproducing that functionality here. Line 136: } else { --- This clears the handlers of a single type, not all handlers in the system. Line 151: revive(event); --- revive can be overridden for event specific clearing, this is a speed optimization. Line 228: final H handler) { --- Not really possible because it would make the listener wrappers a lot more inefficient. File: /branches/1_6_clean_events/user/src/com/google/gwt/i18n/rebind/AbstractLocalizableImplCreator.java (r3963) === Line
[gwt-contrib] Re: [google-web-toolkit] [EMAIL PROTECTED] commented on revision r4004.
Yes it does. But somehow the email sending was delayed -- it was sent at 10:38pm. Yesterday night, on his way home, Bruce had stopped by my desk. He said that he will clarify the comments in person, at a later time. And for now, I could ignore the comments. Amit On Tue, Nov 11, 2008 at 10:42 PM, Scott Blum [EMAIL PROTECTED] wrote: BTW: does this feature send an email directly to the committer who committed the revision? On Tue, Nov 11, 2008 at 10:38 PM, [EMAIL PROTECTED] wrote: [google-web-toolkit] [EMAIL PROTECTED] commented on revision r4004. Details are at http://code.google.com/p/google-web-toolkit/source/detail?r=4004 Score: Neutral General Comment: - Let's not make the default deployment directory actually called 'deployDir' how about the module name or some derivative thereof? - projectCreator currently doesn't run; it should be removed from the distro if we're going to get rid of it - Please review the descriptions on the command-line switches for consitency; the only thing I saw off the bat was inconsistent use of periods (we traditional do not use periods in this context) Respond to these comments at http://code.google.com/p/google-web-toolkit/source/detail?r=4004 -- You received this message because you starred this review, or because your project has directed all notifications to a mailing list that you subscribe to. You may adjust your review notification preferences at: http://code.google.com/hosting/settings --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] Re: adds 6 new visualizations
I uploaded a new patch. let me know what you think. http://galgwt-reviews.appspot.com/203/diff/25/45 File visualization/src/com/google/gwt/visualization/client/CommonChartOptions.java (right): http://galgwt-reviews.appspot.com/203/diff/25/45#newcode34 Line 34: this.is3D = enable3D; actually, this should not be part of CommonChartOptions at all. Pie, Bar, and Column support this, but Area, Line, and Scatter do not. Good catch! http://galgwt-reviews.appspot.com/203/diff/25/45#newcode54 Line 54: setLegend(position.toString()); you're right. I moved it up to Common. http://galgwt-reviews.appspot.com/203/diff/25/41 File visualization/src/com/google/gwt/visualization/client/LegendPosition.java (right): http://galgwt-reviews.appspot.com/203/diff/25/41#newcode24 Line 24: public class LegendPosition { the class comment attempts to answer that question. is it unclear? http://galgwt-reviews.appspot.com/203/diff/25/37 File visualization/src/com/google/gwt/visualization/client/visualizations/ScatterChart.java (right): http://galgwt-reviews.appspot.com/203/diff/25/37#newcode39 Line 39: /** you're right, that's a doc error. it should be fixed soon. http://galgwt-reviews.appspot.com/203/diff/25/37#newcode57 Line 57: }-*/; that's in CommonOptions. http://galgwt-reviews.appspot.com/203 --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] Re: Linker artifacts in WAR
On Tue, Nov 11, 2008 at 2:39 PM, Ray Cromwell [EMAIL PROTECTED] wrote: Something tells me the packer proposal might be very useful. To package GWT apps for offline Android execution, Android demands that various artifacts be placed in precise directories on disk before being packaged into an APK. Maybe Thomas can comment about how this would impact his GWT-in-the-Air library. Maybe as a post-1.6 thing. I'm just concerned about adding yet another pluggable piece of logic. If it would honestly help both Android- and Air-targeted apps, then I'll push for its inclusion in a later release. -- Bob Vawter Google Web Toolkit Team --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] Server side Integration (Spring security)
Hi, I'm listening from a long time on this mailing list and I'm still wondering if it's the right place for my questions ... I'm just finished a small integration between Spring - Spring Security GWT. It's allow to handler Authentication accross/during the GWT-RPC calls. http://code.google.com/p/net-orcades-spring/ There is a war sample as featured download. 1) I've encountered a problem with the resolution of the Serialization file in hosted mode, because the shell servlet uses a ServletContextProxy which is not available in the a javax.servlet.Filter (Spring Security uses Filters). My work around in hosted mode is to ask this resources (IUZIUZUI.gwt.rpc) to the shell servlet using an HTTP request (it's not very efficient, but in hosted mode in not a big deal). Is there a cleaner solution ? 2) More generally, what is the policies to post on this (contrib) mailing list. Is such a project, even if it's mainly a server side integration might be considered as a GWT contribution or should it be see exclusively as a Spring contribution. Thanks. -- Quand le dernier arbre sera abattu, la dernière rivière asséchée, le dernier poisson péché, l'homme va s'apercevoir que l'argent n'est pas comestible - proverbe indien Cri --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit commit] r4026 - branches/1_6_clean_events/user/src/com/google/gwt/user/client
Author: [EMAIL PROTECTED] Date: Wed Nov 12 12:19:08 2008 New Revision: 4026 Modified: branches/1_6_clean_events/user/src/com/google/gwt/user/client/Window.java Log: Don't say that things are initialized before they are Modified: branches/1_6_clean_events/user/src/com/google/gwt/user/client/Window.java == --- branches/1_6_clean_events/user/src/com/google/gwt/user/client/Window.java (original) +++ branches/1_6_clean_events/user/src/com/google/gwt/user/client/Window.java Wed Nov 12 12:19:08 2008 @@ -790,22 +790,22 @@ private static void maybeInitializeCloseHandlers() { if (GWT.isClient() !closeHandlersInitialized) { - closeHandlersInitialized = true; impl.initWindowCloseHandler(); + closeHandlersInitialized = true; } } private static void maybeInitializeResizeHandlers() { if (GWT.isClient() !resizeHandlersInitialized) { - resizeHandlersInitialized = true; impl.initWindowResizeHandler(); + resizeHandlersInitialized = true; } } private static void maybeInitializeScrollHandlers() { if (GWT.isClient() !scrollHandlersInitialized) { - scrollHandlersInitialized = true; impl.initWindowScrollHandler(); + scrollHandlersInitialized = true; } } --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit commit] r4027 - branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui
Author: [EMAIL PROTECTED] Date: Wed Nov 12 12:20:45 2008 New Revision: 4027 Modified: branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/Button.java branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/CheckBox.java branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/DialogBox.java Log: fix some doc format mangling Modified: branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/Button.java == --- branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/Button.java (original) +++ branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/Button.java Wed Nov 12 12:20:45 2008 @@ -27,7 +27,10 @@ * img class='gallery' src='Button.png'/ * /p * - * h3CSS Style Rules/h3 ul class=css li.gwt-Button { }/li /ul + * h3CSS Style Rules/h3 + * ul class=css + * li.gwt-Button { }/li + * /ul * * p * h3Example/h3 Modified: branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/CheckBox.java == --- branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/CheckBox.java (original) +++ branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/CheckBox.java Wed Nov 12 12:20:45 2008 @@ -33,8 +33,11 @@ * img class='gallery' src='CheckBox.png'/ * /p * - * h3CSS Style Rules/h3 ul class='css' li.gwt-CheckBox { }/li li - * .gwt-CheckBox-disabled { Applied when Checkbox is disabled }/li /ul + * h3CSS Style Rules/h3 + * ul class='css' + * li.gwt-CheckBox { }/li + * li.gwt-CheckBox-disabled { Applied when Checkbox is disabled }/li + * /ul * * p * h3Example/h3 @@ -99,7 +102,7 @@ public HandlerRegistration addValueChangeHandler( ValueChangeHandlerBoolean handler) { -// Is this the first value change event? If so, time to listen to clicks +// Is this the first value change handler? If so, time to listen to clicks // on the checkbox if (!isEventHandled(ValueChangeEvent.getType())) { this.addClickHandler(new ClickHandler() { @@ -198,12 +201,9 @@ @Override public void setTabIndex(int index) { // Need to guard against call to setTabIndex before inputElem is -// initialized. -// This happens because FocusWidget's (a superclass of CheckBox) setElement -// method -// calls setTabIndex before inputElem is initialized. See CheckBox's -// protected -// constructor for more information. +// initialized. This happens because FocusWidget's (a superclass of +// CheckBox) setElement method calls setTabIndex before inputElem is +// initialized. See CheckBox's protected constructor for more information. if (inputElem != null) { getFocusImpl().setTabIndex(inputElem, index); } Modified: branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/DialogBox.java == --- branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/DialogBox.java (original) +++ branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/DialogBox.java Wed Nov 12 12:20:45 2008 @@ -49,9 +49,14 @@ * li.gwt-DialogBox .Caption { the caption }/li * li.gwt-DialogBox .dialogContent { the wrapepr around the content }/li * li.gwt-DialogBox .dialogTopLeft { the top left cell }/li - * .gwt-DialogBox .dialogTopRightInner { the inner element of the cell }/li - * li.gwt-DialogBox .dialogMiddleLeft { the middle left cell }/li li - * .gwt-DialogBox .dialogMiddleLeftInner { the inner element of the cell }/li + * li.gwt-DialogBox .dialogTopLeftInner { the inner element of the cell }/li + * li.gwt-DialogBox .dialogTopCenter { the top center cell, where the caption + * is located }/li + * li.gwt-DialogBox .dialogTopCenterInner { the inner element of the cell }/li + * li.gwt-DialogBox .dialogTopRight { the top right cell }/li + * li.gwt-DialogBox .dialogTopRightInner { the inner element of the cell }/li + * li.gwt-DialogBox .dialogMiddleLeft { the middle left cell }/li + * li.gwt-DialogBox .dialogMiddleLeftInner { the inner element of the cell }/li * li.gwt-DialogBox .dialogMiddleCenter { the middle center cell, where the * content is located }/li * li.gwt-DialogBox .dialogMiddleCenterInner { the inner element of the cell }/li --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit commit] r4028 - branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui
Author: [EMAIL PROTECTED] Date: Wed Nov 12 12:35:32 2008 New Revision: 4028 Modified: branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/Widget.java Log: addDomHandler can't accept a null type or handler, so added param checks Modified: branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/Widget.java == --- branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/Widget.java (original) +++ branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/Widget.java Wed Nov 12 12:35:32 2008 @@ -145,9 +145,9 @@ */ protected final H extends EventHandler HandlerRegistration addDomHandler( final H handler, DomEvent.TypeH type) { -if (type != null) { - sinkEvents(type.getEventToSink()); -} +assert handler != null : handler must not be null; +assert type != null : type must not be null; +sinkEvents(type.getEventToSink()); return ensureHandlers().addHandler(type, handler); } --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit commit] r4030 - branches/1_6_clean_events/user/src/com/google/gwt/event/shared
Author: [EMAIL PROTECTED] Date: Wed Nov 12 13:27:13 2008 New Revision: 4030 Removed: branches/1_6_clean_events/user/src/com/google/gwt/event/shared/JavaHandlerRegistry.java branches/1_6_clean_events/user/src/com/google/gwt/event/shared/JsHandlerRegistry.java Modified: branches/1_6_clean_events/user/src/com/google/gwt/event/shared/HandlerManager.java Log: Merging JavaHandlerRegistry and JsHandlerREgister into HandlerManager as private classes, adding privates where necessary. Modified: branches/1_6_clean_events/user/src/com/google/gwt/event/shared/HandlerManager.java == --- branches/1_6_clean_events/user/src/com/google/gwt/event/shared/HandlerManager.java (original) +++ branches/1_6_clean_events/user/src/com/google/gwt/event/shared/HandlerManager.java Wed Nov 12 13:27:13 2008 @@ -16,9 +16,11 @@ package com.google.gwt.event.shared; import com.google.gwt.core.client.GWT; +import com.google.gwt.core.client.JavaScriptObject; import com.google.gwt.event.shared.GwtEvent.Type; import java.util.ArrayList; +import java.util.HashMap; import java.util.List; /** @@ -26,32 +28,251 @@ * handlers on passed in events. */ public class HandlerManager { - // Used to optimize the JavaScript handler container structure. - static int EXPECTED_HANDLERS = 5; - private static final boolean useJs = GWT.isClient(); - private static int index; - /** - * Is the given event live? - * - * @param event the event - * @return is the event live + * The default Handler manager's handler registry for running in Java code. */ - public static boolean isLive(GwtEvent? event) { -return event.isLive(); + private static class JavaHandlerRegistry extends + HashMapGwtEvent.Type?, ArrayList? { + +public H extends EventHandler void addHandler(TypeH type, H handler) { + ArrayListH l = get(type); + if (l == null) { +l = new ArrayListH(); +super.put(type, l); + } + l.add(handler); +} + +public H extends EventHandler void fireEvent(GwtEventH event) { + TypeH type = event.getAssociatedType(); + int count = getHandlerCount(type); + for (int i = 0; i count; i++) { +H handler = getHandler(type, i); +event.dispatch(handler); + } +} + +public H extends EventHandler H getHandler(GwtEvent.TypeH eventKey, +int index) { + ArrayListH l = get(eventKey); + return l.get(index); +} + +public int getHandlerCount(GwtEvent.Type? eventKey) { + ArrayList? l = super.get(eventKey); + if (l == null) { +return 0; + } else { +return l.size(); + } +} + +public H void removeHandler(GwtEvent.TypeH eventKey, H handler) { + ArrayListH l = get(eventKey); + if (l != null) { +l.remove(handler); + } +} + +@SuppressWarnings(unchecked) +private H ArrayListH get(GwtEvent.TypeH type) { + // This cast is safe because we control the puts. + return (ArrayListH) super.get(type); +} } /** - * Revives the given event. + * Default JavaScript handler registry. This is in the shared class but should + * never be called outside of a GWT runtime environment. * - * @param event the event + * The JsHandlerRegistry makes use of the fact that in the large majority of + * cases, only one or two handlers are added for each event type. Therefore, + * rather than storing handlers in a list of lists, we store then in a single + * flattened array with an escape clause to handle the rare case where we have + * more handlers then expected. */ - public static void revive(GwtEvent? event) { -if (event.isLive() == false) { - event.revive(); + private static class JsHandlerRegistry extends JavaScriptObject { + +/** + * Required constructor. + */ +protected JsHandlerRegistry() { +} + +public final H extends EventHandler void addHandler( +HandlerManager manager, TypeH type, H myHandler) { + + // The base is the equivalent to a c pointer into the flattened handler + // data structure. + int base = type.hashCode(); + int count = getCount(base); + boolean flattened = isFlattened(base); + H handler = myHandler; + // If we already have the maximum number of handlers we can store in the + // flattened data structure, store the handlers in an external list + // instead. + if ((count == EXPECTED_HANDLERS) flattened) { +// As long as we are only adding to the end of a handler list, should +// not need to queue. +if (manager.firingDepth 0) { + manager.enqueueAdd(type, myHandler); + return; +} +unflatten(base); +flattened = false; + } + if (flattened) { +setFlatHandler(base, count, handler); + } else { +
[gwt-contrib] [google-web-toolkit commit] r4031 - branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui
Author: [EMAIL PROTECTED] Date: Wed Nov 12 13:27:32 2008 New Revision: 4031 Modified: branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/Hyperlink.java Log: fix javadoc autoformat damage in Hyperlink Modified: branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/Hyperlink.java == --- branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/Hyperlink.java (original) +++ branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/Hyperlink.java Wed Nov 12 13:27:32 2008 @@ -40,7 +40,10 @@ * img class='gallery' src='Hyperlink.png'/ * /p * - * h3CSS Style Rules/h3 ul class='css' li.gwt-Hyperlink { }/li /ul + * h3CSS Style Rules/h3 + * ul class='css' + * li.gwt-Hyperlink { }/li + * /ul * * p * h3Example/h3 [EMAIL PROTECTED] com.google.gwt.examples.HistoryExample} --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit commit] r4033 - releases/1.6
Author: [EMAIL PROTECTED] Date: Wed Nov 12 14:00:35 2008 New Revision: 4033 Modified: releases/1.6/branch-info.txt Log: Recording merge into trunk. Modified: releases/1.6/branch-info.txt == --- releases/1.6/branch-info.txt(original) +++ releases/1.6/branch-info.txtWed Nov 12 14:00:35 2008 @@ -10,5 +10,6 @@ /releases/1.5/@r3630:3863 was merged (r3864) into this branch /releases/1.6/@r3739:3876 was merged (r3877) into trunk /releases/1.6/@r3878:3944 was merged (r3945) into trunk, skipping c3878 +/releases/1.6/@r3944:4025 was merged (r) into trunk The next merge into trunk will be 3944:HEAD +--- The next merge into trunk will be 4025:HEAD --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit commit] r4036 - branches/1_6_clean_events/user/src/com/google/gwt/user/client
Author: [EMAIL PROTECTED] Date: Wed Nov 12 14:37:26 2008 New Revision: 4036 Modified: branches/1_6_clean_events/user/src/com/google/gwt/user/client/ListenerWrapper.java Log: fixing @see tag. Modified: branches/1_6_clean_events/user/src/com/google/gwt/user/client/ListenerWrapper.java == --- branches/1_6_clean_events/user/src/com/google/gwt/user/client/ListenerWrapper.java (original) +++ branches/1_6_clean_events/user/src/com/google/gwt/user/client/ListenerWrapper.java Wed Nov 12 14:37:26 2008 @@ -33,7 +33,7 @@ * Gathers the bulk of the legacy glue code in one place, for easy deletion when * Listener methods are deleted. * - * @see com.google.gwt.user.L + * @see com.google.gwt.user.ListenerWrapper * @param T listener type */ @Deprecated --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit commit] r4038 - in branches/1_6_clean_events/user/src/com/google/gwt/event: logical/shared shared
Author: [EMAIL PROTECTED] Date: Wed Nov 12 15:17:32 2008 New Revision: 4038 Modified: branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/CloseEvent.java branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/OpenEvent.java branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/SelectionEvent.java branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/ValueChangeEvent.java branches/1_6_clean_events/user/src/com/google/gwt/event/shared/HandlerManager.java Log: Finishing all the changes that were suggested from BeforeSelectionEvent Modified: branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/CloseEvent.java == --- branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/CloseEvent.java (original) +++ branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/CloseEvent.java Wed Nov 12 15:17:32 2008 @@ -35,7 +35,7 @@ * * @param T the target type * @param S The event source - * @param source the source of the handlers + * @param source the source of the handlers * @param target the target * @param autoClosed was the target closed automatically */ @@ -53,7 +53,8 @@ } /** - * Fires a close event on all registered handlers in the handler manager. + * Fires a close event on all registered handlers in the handler manager. If + * no such handlers exist, this method will do nothing. * * @param T the target type * @param S The event source @@ -66,7 +67,7 @@ } /** - * Gets the abstract type associated with this event. + * Gets the type associated with this event. * * @return returns the handler type */ @@ -79,7 +80,7 @@ private boolean autoClosed; /** - * Constructor. Should only be used by subclasses, almost always for testing. + * Creates a new close event. */ protected CloseEvent() { } @@ -108,8 +109,8 @@ handler.onClose(this); } - // Because of type erasure, our static type is - // wild carded, yet the real type should use our I param. + // The instance knows its BeforeSelectionHandler is of type I, but the TYPE + // field itself does not, so we have to do an unsafe cast here. @SuppressWarnings(unchecked) @Override protected final TypeCloseHandlerT getAssociatedType() { Modified: branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/OpenEvent.java == --- branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/OpenEvent.java (original) +++ branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/OpenEvent.java Wed Nov 12 15:17:32 2008 @@ -31,7 +31,8 @@ private static TypeOpenHandler? TYPE; /** - * Fires a open event on all registered handlers in the handler manager. + * Fires a open event on all registered handlers in the handler manager.If no + * such handlers exist, this method will do nothing. * * @param T the target type * @param S The event source @@ -51,7 +52,7 @@ } /** - * Gets the abstract type associated with this event. + * Gets the type associated with this event. * * @return returns the handler type */ @@ -65,7 +66,7 @@ private T target; /** - * Constructor. Should only be used by subclasses, almost always for testing. + * Creates a new open event. */ protected OpenEvent() { } @@ -86,6 +87,7 @@ // Because of type erasure, our static type is // wild carded, yet the real type should use our I param. + @SuppressWarnings(unchecked) @Override protected final TypeOpenHandlerT getAssociatedType() { Modified: branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/SelectionEvent.java == --- branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/SelectionEvent.java (original) +++ branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/SelectionEvent.java Wed Nov 12 15:17:32 2008 @@ -31,7 +31,8 @@ private static TypeSelectionHandler? TYPE; /** - * Fires a selection event on all registered handlers in the handler manager. + * Fires a selection event on all registered handlers in the handler + * manager.If no such handlers exist, this method will do nothing. * * @param I the selected item type * @param S The event source @@ -51,7 +52,7 @@ } /** - * Gets the abstract type associated with this event. + * Gets the type associated with this event. * * @return returns the handler type */ @@ -65,7 +66,7 @@ private I selectedItem; /** - * Constructor. Should only be used by subclasses,
[gwt-contrib] [google-web-toolkit commit] r4039 - branches/1_6_clean_events/user/src/com/google/gwt/event/shared
Author: [EMAIL PROTECTED] Date: Wed Nov 12 15:21:47 2008 New Revision: 4039 Modified: branches/1_6_clean_events/user/src/com/google/gwt/event/shared/DefaultHandlerRegistration.java Log: Making all the fields final in the default handler registry. Modified: branches/1_6_clean_events/user/src/com/google/gwt/event/shared/DefaultHandlerRegistration.java == --- branches/1_6_clean_events/user/src/com/google/gwt/event/shared/DefaultHandlerRegistration.java (original) +++ branches/1_6_clean_events/user/src/com/google/gwt/event/shared/DefaultHandlerRegistration.java Wed Nov 12 15:21:47 2008 @@ -22,9 +22,9 @@ */ public class DefaultHandlerRegistration implements HandlerRegistration { - private HandlerManager manager; - EventHandler handler; - private Type? type; + private final HandlerManager manager; + private final EventHandler handler; + private final Type? type; /** * Creates a new handler registration. @@ -45,7 +45,7 @@ /** * Removes the given handler from its manager. */ - @SuppressWarnings(unchecked) + @SuppressWarnings({unchecked, deprecation}) // This is safe because when the elements were passed in they conformed to // TypeH,H. public void removeHandler() { --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit commit] r4040 - in branches/1_6_clean_events/user/src/com/google/gwt: core/client/impl event/dom/client u...
Author: [EMAIL PROTECTED] Date: Wed Nov 12 15:23:17 2008 New Revision: 4040 Added: branches/1_6_clean_events/user/src/com/google/gwt/event/dom/client/PrivateMap.java - copied, changed from r4025, /branches/1_6_clean_events/user/src/com/google/gwt/core/client/impl/PrivateMap.java Removed: branches/1_6_clean_events/user/src/com/google/gwt/core/client/impl/PrivateMap.java Modified: branches/1_6_clean_events/user/src/com/google/gwt/event/dom/client/DomEvent.java branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/RootPanel.java Log: Reverts use of PrivateMap in RootPanel. Moves PrivateMap to com.google.gwt.event.dom.client (where its only remaining client lives), and makes it package private. Also reverts use of WidgetCollection in RootPanel. It's all about narrowing the scope, baby. Modified: branches/1_6_clean_events/user/src/com/google/gwt/event/dom/client/DomEvent.java == --- branches/1_6_clean_events/user/src/com/google/gwt/event/dom/client/DomEvent.java (original) +++ branches/1_6_clean_events/user/src/com/google/gwt/event/dom/client/DomEvent.java Wed Nov 12 15:23:17 2008 @@ -15,7 +15,6 @@ */ package com.google.gwt.event.dom.client; -import com.google.gwt.core.client.impl.PrivateMap; import com.google.gwt.event.shared.EventHandler; import com.google.gwt.event.shared.GwtEvent; import com.google.gwt.event.shared.HandlerManager; Copied: branches/1_6_clean_events/user/src/com/google/gwt/event/dom/client/PrivateMap.java (from r4025, /branches/1_6_clean_events/user/src/com/google/gwt/core/client/impl/PrivateMap.java) == --- /branches/1_6_clean_events/user/src/com/google/gwt/core/client/impl/PrivateMap.java (original) +++ branches/1_6_clean_events/user/src/com/google/gwt/event/dom/client/PrivateMap.java Wed Nov 12 15:23:17 2008 @@ -13,8 +13,7 @@ * License for the specific language governing permissions and limitations under * the License. */ - -package com.google.gwt.core.client.impl; +package com.google.gwt.event.dom.client; import com.google.gwt.core.client.GWT; import com.google.gwt.core.client.JavaScriptObject; @@ -22,11 +21,11 @@ import java.util.HashMap; /** - * Private map implementation used by gwt team. + * Lightweight map implementation. Package protected due to non-final API. * * @param V value type */ -public class PrivateMapV { +class PrivateMapV { /** * Js version of our map. Modified: branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/RootPanel.java == --- branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/RootPanel.java (original) +++ branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/RootPanel.java Wed Nov 12 15:23:17 2008 @@ -15,7 +15,6 @@ */ package com.google.gwt.user.client.ui; -import com.google.gwt.core.client.impl.PrivateMap; import com.google.gwt.dom.client.Document; import com.google.gwt.event.logical.shared.CloseEvent; import com.google.gwt.event.logical.shared.CloseHandler; @@ -26,6 +25,11 @@ import com.google.gwt.user.client.Element; import com.google.gwt.user.client.Window; +import java.util.HashMap; +import java.util.HashSet; +import java.util.Map; +import java.util.Set; + /** * The panel to which all other widgets must ultimately be added. RootPanels are * never created directly. Rather, they are accessed via [EMAIL PROTECTED] RootPanel#get()}. @@ -57,22 +61,21 @@ } } - private static PrivateMapRootPanel rootPanels = new PrivateMapRootPanel(); - private static boolean hooked; - private static WidgetCollection widgetsToDetach = new WidgetCollection(null); + private static MapString, RootPanel rootPanels = new HashMapString, RootPanel(); + private static SetWidget widgetsToDetach = new HashSetWidget(); /** * Marks a widget as detached and removes it from the detach list. * * If an element belonging to a widget originally passed to - * [EMAIL PROTECTED] #detachOnWindowClose(Widget)} has been removed from the document, - * calling this method will cause it to be marked as detached immediately. - * Failure to do so will keep the widget from being garbage collected until - * the page is unloaded. + * [EMAIL PROTECTED] #detachOnWindowClose(Widget)} has been removed from the document, calling + * this method will cause it to be marked as detached immediately. Failure to + * do so will keep the widget from being garbage collected until the page is + * unloaded. * * This method may only be called per widget, and only for widgets that were - * originally passed to [EMAIL PROTECTED] #detachOnWindowClose(Widget)}. Any widget in - * the
[gwt-contrib] RR (1_6_clean): Reduces visibility of PrivateMap
Kelly, could you review me on this? Emily and I hashed out the change over IM. http://code.google.com/p/google-web-toolkit/source/detail?r=4040 Reverts use of PrivateMap in RootPanel. Moves PrivateMap to com.google.gwt.event.dom.client (where its only remaining client lives), and makes it package private. Also reverts use of WidgetCollection in RootPanel. It's all about narrowing the scope, baby. --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit commit] r4041 - branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared
Author: [EMAIL PROTECTED] Date: Wed Nov 12 15:27:36 2008 New Revision: 4041 Modified: branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/ResizeEvent.java Log: Currently we are not giving people a way of overriding the height and width, so those values should be final for now. Modified: branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/ResizeEvent.java == --- branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/ResizeEvent.java (original) +++ branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/ResizeEvent.java Wed Nov 12 15:27:36 2008 @@ -60,14 +60,10 @@ return TYPE; } - private int width; - private int height; + private final int width; + private final int height; - /** - * Constructor. - */ - protected ResizeEvent() { - } + /** * Construct a new [EMAIL PROTECTED] ResizeEvent}. --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit commit] r4042 - branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui
Author: [EMAIL PROTECTED] Date: Wed Nov 12 15:33:41 2008 New Revision: 4042 Modified: branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/Widget.java Log: Revert explicit initializer. No gain from it, possible extra code gen, no time to check Modified: branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/Widget.java == --- branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/Widget.java (original) +++ branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/Widget.java Wed Nov 12 15:33:41 2008 @@ -38,7 +38,7 @@ * p * Package protected to allow Composite to see it. */ - int eventsToSink = 0; + int eventsToSink; private boolean attached; private Object layoutData; --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit] [EMAIL PROTECTED] commented on branch /branches/1_6_clean_events.
[google-web-toolkit] [EMAIL PROTECTED] commented on branch /branches/1_6_clean_events. Details are at http://code.google.com/p/google-web-toolkit/source/branch?spec=issue3083branch=%2Fbranches%2F1_6_clean_events Line-by-line comments: File: /branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/Tree.java (r4020) === Line 470: public TreeItem getValue() { --- This method doesn't appear in the 1.6 branch. Do we really want to add it? Tree does not implement HasValue Respond to these comments at http://code.google.com/p/google-web-toolkit/source/branch?spec=issue3083branch=%2Fbranches%2F1_6_clean_events -- You received this message because you starred this review, or because your project has directed all notifications to a mailing list that you subscribe to. You may adjust your review notification preferences at: http://code.google.com/hosting/settings --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit commit] r4043 - branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui
Author: [EMAIL PROTECTED] Date: Wed Nov 12 15:59:05 2008 New Revision: 4043 Modified: branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/Tree.java Log: undo autoformat damage. Remove accidental getValue() method Modified: branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/Tree.java == --- branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/Tree.java (original) +++ branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/Tree.java Wed Nov 12 15:59:05 2008 @@ -71,9 +71,12 @@ * p * img class='gallery' src='Tree.png'/ * /p - * h3CSS Style Rules/h3 ul class='css' li.gwt-Tree { the tree itself }/li - * li.gwt-Tree .gwt-TreeItem { a tree item }/li li.gwt-Tree - * .gwt-TreeItem-selected { a selected tree item }/li /ul + * h3CSS Style Rules/h3 + * ul class='css' + * li.gwt-Tree { the tree itself }/li + * li.gwt-Tree .gwt-TreeItem { a tree item }/li + * li.gwt-Tree .gwt-TreeItem-selected { a selected tree item }/li + * /ul * p * h3Example/h3 * [EMAIL PROTECTED] com.google.gwt.examples.TreeExample} @@ -160,11 +163,8 @@ } private static final int OTHER_KEY_DOWN = 63233; - private static final int OTHER_KEY_LEFT = 63234; - private static final int OTHER_KEY_RIGHT = 63235; - private static final int OTHER_KEY_UP = 63232; static native boolean shouldTreeDelegateFocusToElement(Element elem) /*-{ @@ -465,10 +465,6 @@ public int getTabIndex() { return FocusPanel.impl.getTabIndex(focusable); - } - - public TreeItem getValue() { -return getSelectedItem(); } public boolean isAnimationEnabled() { --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit] [EMAIL PROTECTED] commented on revision r4030.
[google-web-toolkit] [EMAIL PROTECTED] commented on revision r4030. Details are at http://code.google.com/p/google-web-toolkit/source/detail?r=4030 Score: Positive Line-by-line comments: File: /branches/1_6_clean_events/user/src/com/google/gwt/event/shared/HandlerManager.java (r4030) === Line 99: protected JsHandlerRegistry() { --- This being protected looks like a typo. Respond to these comments at http://code.google.com/p/google-web-toolkit/source/detail?r=4030 -- You received this message because you starred this review, or because your project has directed all notifications to a mailing list that you subscribe to. You may adjust your review notification preferences at: http://code.google.com/hosting/settings --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit] [EMAIL PROTECTED] commented on revision r4034.
[google-web-toolkit] [EMAIL PROTECTED] commented on revision r4034. Details are at http://code.google.com/p/google-web-toolkit/source/detail?r=4034 General Comment: I'd like the final on getTab() to go away, or else to see vergiage in the javadoc defending it. Line-by-line comments: File: /branches/1_6_clean_events/reference/code-museum/src/com/google/gwt/museum/client/defaultmuseum/VisualsForDialogBox.java (r4034) === Line 78: public DialogBox.Caption getCaption() { --- Why? File: /branches/1_6_clean_events/user/src/com/google/gwt/user/client/ui/TabBar.java (r4034) === Line 256:public final Tab getTab(int index) { --- Why is this final? Let's try to get into the habit of documenting our reasoning whenever we do this. Line 355: public void onClick(Widget sender) { --- Missing @Deprecated annotation Respond to these comments at http://code.google.com/p/google-web-toolkit/source/detail?r=4034 -- You received this message because you starred this review, or because your project has directed all notifications to a mailing list that you subscribe to. You may adjust your review notification preferences at: http://code.google.com/hosting/settings --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit commit] r4044 - in branches/1_6_clean_events/user: src/com/google/gwt/event/logical/shared test/com/googl...
Author: [EMAIL PROTECTED] Date: Wed Nov 12 20:10:14 2008 New Revision: 4044 Modified: branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/BeforeSelectionEvent.java branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/ResizeEvent.java branches/1_6_clean_events/user/test/com/google/gwt/event/logical/shared/LogicalEventsTest.java Log: Fix uncompilable LogicalEvents test, style error in ResizeEvent, javadoc in BeforeSelectionEvent Modified: branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/BeforeSelectionEvent.java == --- branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/BeforeSelectionEvent.java (original) +++ branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/BeforeSelectionEvent.java Wed Nov 12 20:10:14 2008 @@ -39,7 +39,8 @@ * @param S The event source type * @param source the source of the handlers * @param item the item - * @return the event so that the caller can check if it was canceled + * @return the event so that the caller can check if it was canceled, or null + * if no handlers of this event type have been registered */ public static I, S extends HasBeforeSelectionHandlersI HasHandlers BeforeSelectionEventI fire( S source, I item) { Modified: branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/ResizeEvent.java == --- branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/ResizeEvent.java (original) +++ branches/1_6_clean_events/user/src/com/google/gwt/event/logical/shared/ResizeEvent.java Wed Nov 12 20:10:14 2008 @@ -63,8 +63,6 @@ private final int width; private final int height; - - /** * Construct a new [EMAIL PROTECTED] ResizeEvent}. * Modified: branches/1_6_clean_events/user/test/com/google/gwt/event/logical/shared/LogicalEventsTest.java == --- branches/1_6_clean_events/user/test/com/google/gwt/event/logical/shared/LogicalEventsTest.java (original) +++ branches/1_6_clean_events/user/test/com/google/gwt/event/logical/shared/LogicalEventsTest.java Wed Nov 12 20:10:14 2008 @@ -15,8 +15,8 @@ */ package com.google.gwt.event.logical.shared; -import com.google.gwt.event.shared.GwtEvent; import com.google.gwt.event.shared.EventHandler; +import com.google.gwt.event.shared.GwtEvent; import com.google.gwt.event.shared.HandlerManager; import junit.framework.TestCase; @@ -69,7 +69,7 @@ simpleFire(SelectionEvent.getType(), new SelectionEventString()); simpleFire(CloseEvent.getType(), new CloseEventString()); simpleFire(OpenEvent.getType(), new OpenEventString()); -simpleFire(ResizeEvent.getType(), new ResizeEvent()); +simpleFire(ResizeEvent.getType(), new ResizeEvent(0, 0)); simpleFire(ValueChangeEvent.getType(), new ValueChangeEventString()); } --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---
[gwt-contrib] [google-web-toolkit commit] r4045 - in branches/1_6_clean_events/user: src/com/google/gwt/event/shared test/com/google/gwt/ev...
Author: [EMAIL PROTECTED] Date: Wed Nov 12 21:30:25 2008 New Revision: 4045 Modified: branches/1_6_clean_events/user/src/com/google/gwt/event/shared/HandlerManager.java branches/1_6_clean_events/user/test/com/google/gwt/event/shared/HandlerManagerTest.java Log: Ensure concurrent mods happen in the right order. Required undoing optimization in JsRegistry that would do adds immediately, as immediately is the wrong time if a remove came first Modified: branches/1_6_clean_events/user/src/com/google/gwt/event/shared/HandlerManager.java == --- branches/1_6_clean_events/user/src/com/google/gwt/event/shared/HandlerManager.java (original) +++ branches/1_6_clean_events/user/src/com/google/gwt/event/shared/HandlerManager.java Wed Nov 12 21:30:25 2008 @@ -18,6 +18,7 @@ import com.google.gwt.core.client.GWT; import com.google.gwt.core.client.JavaScriptObject; import com.google.gwt.event.shared.GwtEvent.Type; +import com.google.gwt.user.client.Command; import java.util.ArrayList; import java.util.HashMap; @@ -70,7 +71,12 @@ public H void removeHandler(GwtEvent.TypeH eventKey, H handler) { ArrayListH l = get(eventKey); if (l != null) { -l.remove(handler); +boolean result = l.remove(handler); +if (!result) { + // The client code has a similar assert. Relying on asserts in + // server code is dicey + throw new IllegalArgumentException(Tried to remove unknown handler); +} } } @@ -100,7 +106,7 @@ } public final H extends EventHandler void addHandler( -HandlerManager manager, TypeH type, H myHandler) { +TypeH type, H myHandler) { // The base is the equivalent to a c pointer into the flattened handler // data structure. @@ -112,12 +118,6 @@ // flattened data structure, store the handlers in an external list // instead. if ((count == EXPECTED_HANDLERS) flattened) { -// As long as we are only adding to the end of a handler list, should -// not need to queue. -if (manager.firingDepth 0) { - manager.enqueueAdd(type, myHandler); - return; -} unflatten(base); flattened = false; } @@ -172,15 +172,14 @@ EventHandler handler) { int base = eventKey.hashCode(); - // Removing a handler is unusual, so smaller code is preferable then + // Removing a handler is unusual, so smaller code is preferable to // handling both flat and dangling list of pointers. if (isFlattened(base)) { unflatten(base); } boolean result = removeHelper(base, handler); // Hiding this behind an assertion as we'd rather not force the compiler - // to - // have to include all handler.toString() instances. + // to have to include all handler.toString() instances. assert result : handler + did not exist; } @@ -248,10 +247,6 @@ this[base + 1][index] = handler; }-*/; -private native void setHandlerList(int base, JavaScriptObject handlerList) /*-{ - this[base + 1] = handlerList; -}-*/; - private native void unflatten(int base) /*-{ var handlerList = {}; var count = this[base]; @@ -287,13 +282,10 @@ // source of the event. private final Object source; - - // pending queue of removes that were called during event firing. - private ListObject removalQueue; - - // pending queue of adds that were called during event firing. - private ArrayListObject addQueue; - + + // Add and remove operations received during dispatch. + private ListCommand deferredDeltas; + /** * Creates a handler manager with the given source. * @@ -319,24 +311,10 @@ */ public H extends EventHandler HandlerRegistration addHandler( GwtEvent.TypeH type, final H handler) { - -/* - * We used to keep the enqueue / dequeue entirely inside HandlerManager. - * However, we found a 30% speed improvement in handler registration if - * JsHandlerRegistry is allowed to make its own decision about queuing. Thus - * the funny code path here. - * - * No parallel optimization was made for removing handlers, as that rarely - * happens anyway, and is not a significant contributer to startup time. - */ -if (useJs) { - javaScriptRegistry.addHandler(this, type, handler); +if (firingDepth 0) { + enqueueAdd(type, handler); } else { - if (firingDepth 0) { -enqueueAdd(type, handler); - } else { -javaRegistry.addHandler(type, handler); - } + doAdd(type, handler); } return new DefaultHandlerRegistration(this, type, handler); } @@ -388,7 +366,7 @@ public H extends EventHandler H getHandler(GwtEvent.TypeH type, int index) { assert
[gwt-contrib] RR (1_6_clean_events): fix for concurrent mods to HandlerManager
http://code.google.com/p/google-web-toolkit/source/detail?r=4045 Ensures concurrent mods happen in the right order. Required undoing optimization in JsRegistry that would do adds immediately, as immediately is the wrong time if a remove came first --~--~-~--~~~---~--~~ http://groups.google.com/group/Google-Web-Toolkit-Contributors -~--~~~~--~~--~--~---