Re: Multiple GWT Apps inside one HTML Pages

2012-07-05 Thread david.herv...@gmail.com
Thanks Thomas,

I've already done some tests and not I've not observed any kind of troubles 
but my fear is that if I rebuild the apps later they entered into 
collision without warning and I don't want my application to work by 
mistake...
Deeper inside GWT and for my personal knowledge, can you tell me if 
including a GWT script into an HTML page, this one is creating an iframe 
DOM child in which the JS fragment are loaded thus preventing several 
inclusion from colliding ?

Le mardi 3 juillet 2012 12:48:47 UTC+2, Thomas Broyer a écrit :

 I believe all the issues have been fixed (long ago actually).
 As the docs say, there were issues with event handling, but I believe 
 everything's fixed by now (and the doc is therefore outdated).

 On Tuesday, July 3, 2012 11:50:51 AM UTC+2, david@gmail.com wrote:

 Hello All,

 I know this question as a lot of thread in this group but I've really 
 found what I want.
 I want to compile several gwt apps independly the one from each other and 
 load these apps into one HTML pages by inserting the script of each 
 .nocache.js
 I've read on gwt developper guide 
 https://developers.google.com/web-toolkit/doc/latest/DevGuideOrganizingProjects#DevGuideModules
 that this is quite a bad idea, but I've some good reason for doing so.
 I've also read a post from Thomas Broyer here : 
 http://stackoverflow.com/questions/9824763/gwt-polluting-global-javascript-namespacethat
  said that gwt code runs inside an iframe thus is not polluting other 
 js global ressource.

 Is there really a problem of inserting several gwt apps into the same 
 hosted html page ? Does the generated JS of one module can interfered with 
 another generated JS ?

 Thanks all for your reply



-- 
You received this message because you are subscribed to the Google Groups 
Google Web Toolkit group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/google-web-toolkit/-/ulUew44YEVgJ.
To post to this group, send email to google-web-toolkit@googlegroups.com.
To unsubscribe from this group, send email to 
google-web-toolkit+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-web-toolkit?hl=en.



Multiple GWT Apps inside one HTML Pages

2012-07-03 Thread david.herv...@gmail.com
Hello All,

I know this question as a lot of thread in this group but I've really found 
what I want.
I want to compile several gwt apps independly the one from each other and 
load these apps into one HTML pages by inserting the script of each 
.nocache.js
I've read on gwt developper guide 
https://developers.google.com/web-toolkit/doc/latest/DevGuideOrganizingProjects#DevGuideModules
that this is quite a bad idea, but I've some good reason for doing so.
I've also read a post from Thomas Broyer here : 
http://stackoverflow.com/questions/9824763/gwt-polluting-global-javascript-namespace
 
that said that gwt code runs inside an iframe thus is not polluting other 
js global ressource.

Is there really a problem of inserting several gwt apps into the same 
hosted html page ? Does the generated JS of one module can interfered with 
another generated JS ?

Thanks all for your reply

-- 
You received this message because you are subscribed to the Google Groups 
Google Web Toolkit group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/google-web-toolkit/-/FM3Ya8FGnZEJ.
To post to this group, send email to google-web-toolkit@googlegroups.com.
To unsubscribe from this group, send email to 
google-web-toolkit+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-web-toolkit?hl=en.



Re: GWTTestCase meddling/not meddling

2011-07-28 Thread david.herv...@gmail.com
It feels like you wish to test your client side code that calls real
server side code, isn't it ?
If you would like to test your client side code that really calls the
server side code, it will be the case if you start a GWTTestCase.

You could not have a server test with a client side test despite you
are using an MVP approach.
client side code use some GWT.create that are not understood from
javac and server side code contains code not understood by
GWTTestCase...

On 27 juil, 14:53, Tim K timk...@gmail.com wrote:
 This tip comes from  Communicate with a Server

 Although GWT translates Java into JavaScript for client-side code,
 GWT does not meddle with your ability to run Java bytecode on your
 server whatsoever. Server-side code doesn't need to be translatable,
 so you're free to use any Java library you find useful.

 Simply put, I want GWT to meddle with some of my code, but not all of
 it.

 Is there a way to have a unit test with both server and client code?
 This code fails with an error message.
 --- 
 -
 import com.example.myproject.server.GreetingServiceImpl;

 public class ProjectTest extends GWTTestCase {

         public String getModuleName() {
                 return com.example.myproject.Project;
         }
         GreetingServiceImpl greet = new GreetingServiceImpl();

     @Test
     public void test01(){
         }

 }

 --- 
 -
 No source code is available for type
 com.example.myproject.server.GreetingServiceImpl; did you forget to
 inherit a required module?
 --- 
 -

 I understand why this fails.  How can we get this to work?

 Thanks,
 Tim

-- 
You received this message because you are subscribed to the Google Groups 
Google Web Toolkit group.
To post to this group, send email to google-web-toolkit@googlegroups.com.
To unsubscribe from this group, send email to 
google-web-toolkit+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-web-toolkit?hl=en.



Re: SimpleEventBus : why such a non-predictive behavior implementation ?

2011-07-27 Thread david.herv...@gmail.com
thanks, committed patch here : http://gwt-code-reviews.appspot.com/1500804/

On 26 juil, 22:43, Gal Dolber gal.dol...@gmail.com wrote:
 I am, but your post is too long to read :)

 For what I understood, I had a similar problem, and I solved it
 encapsulating the create widgetC in a DeferredCommand (for your example).

 Its really hard for me to understand the modification you purpose, maybe
 someone from google could see it.
 But I think that if you found a better way of doing something you should
 send a patch and make us all 
 happyhttp://code.google.com/webtoolkit/makinggwtbetter.html(also you will get
 more help in gwt-code-reviews.appspot.com than here)

 Regards!

 // on the WidgetA.EventType reception is decided to create a widget C
 create widgetC

 On Tue, Jul 26, 2011 at 5:11 PM, david.herv...@gmail.com 







 david.herv...@gmail.com wrote:
  No body concerned ?

  On 25 juil, 10:50, david.herv...@gmail.com david.herv...@gmail.com
  wrote:
   Hi,

   I'm facing a problem when using the simple implementation of the
   EventBus.

   // register widget B to be notified when WidgetA trigger an event
   register handler of WidgetB on WidgetA.EventType

   // dispatch (firingDepth is incremented)
   WidgetA.fireEvent

   // my widget is really called !!! that's good news
   WidgetB.onWidgetAEvent

   // on the WidgetA.EventType reception is decided to create a widget C
   create widgetC

   // this widget register himself to be notified on widgetB events -
   here the widget is registered in the deferredDeltas map (enqueueing)
   register handler of widgetC on WidgetB.EventType

   // widget B fired an event which is never trapped by the widget C
   because the handler of Widget C is in the deferredDeltas AND
   firingDepth is not 0
   WidgetB.fireEvent

   I'm doubtful because I was expected Widget C to receive event from
   Widget B. A work around is to encapsulate the WidgetB.fireEvent into a
   DeferredCommand but it's not really a solution.

   An other solution is to reconsider the usage of firingDepth, I don't
   really know why it is used (actually I know, but avoid concurrency
   modification that way leads to the upper that strange behavior).
   In simple implementation (thread safe) will be to get rid of the usage
   of this firingDepth/deferredDeltas and that getHandlerList return a
   copy of the handlers to go through and that's it:
   We insert directly the handler when they request for registration and
   we fire on the current map of handlers

   Below is a possible implementation of what I think is a better
   implementation (behaviorally speaking) :

   package com.google.web.bindery.event.shared;

   import java.util.ArrayList;
   import java.util.Collections;
   import java.util.HashMap;
   import java.util.HashSet;
   import java.util.List;
   import java.util.ListIterator;
   import java.util.Map;
   import java.util.Set;

   import com.google.web.bindery.event.shared.Event.Type;

   public class MySimpleEventBus extends EventBus {

       private final boolean isReverseOrder;

       /**
        * Map of event type to map of event source to list of their
   handlers.
        */
       private final MapEvent.Type?, MapObject, List? map =
           new HashMapEvent.Type?, MapObject, List?();

       public MySimpleEventBus() {
         this(false);
       }

       /**
        * Allows creation of an instance that fires its handlers in the
   reverse of
        * the order in which they were added, although filtered handlers
   all fire
        * before unfiltered handlers.
        * p
        *
        * @deprecated This is a legacy feature, required by GWT's old
   HandlerManager.
        *             Reverse order is not honored for handlers tied to a
   specific
        *             event source (via {@link #addHandlerToSource}.
        */
       @Deprecated
       protected MySimpleEventBus(boolean fireInReverseOrder) {
         isReverseOrder = fireInReverseOrder;
       }

       @Override
       public H HandlerRegistration addHandler(TypeH type, H handler)
   {
         return doAdd(type, null, handler);
       }

       @Override
       public H HandlerRegistration addHandlerToSource(final
   Event.TypeH type, final Object source,
           final H handler) {
         if (source == null) {
           throw new NullPointerException(Cannot add a handler with a
   null source);
         }

         return doAdd(type, source, handler);
       }

       @Override
       public void fireEvent(Event? event) {
         doFire(event, null);
       }

       @Override
       public void fireEventFromSource(Event? event, Object source) {
         if (source == null) {
           throw new NullPointerException(Cannot fire from a null
   source);
         }
         doFire(event, source);
       }

       /**
        * @deprecated required by legacy features in GWT's old
   HandlerManager
        */
       @Deprecated
       protected H void doRemove(Event.TypeH type, Object

Re: SimpleEventBus : why such a non-predictive behavior implementation ?

2011-07-27 Thread david.herv...@gmail.com
Even if multithreaded my implementation is (normally)  done.
I really don't know why they have used such a mecanism...
There may be a use case I'm missing

On 27 juil, 17:28, Sixin Zhang sixin.zh...@gmail.com wrote:
 i feel alike, all new registrations are delayed until the end of
 firing (depth=0) .. so nothing will happen if firing those new events
 before the end ..
 depth behaves like a lock for concurrency, but not really necessary
 for single-thread JavaScript ..

 On Jul 27, 9:58 am, david.herv...@gmail.comdavid.herv...@gmail.com wrote:
  thanks, committed patch here :http://gwt-code-reviews.appspot.com/1500804/

  On 26 juil, 22:43, Gal Dolber gal.dol...@gmail.com wrote:

   I am, but your post is too long to read :)

   For what I understood, I had a similar problem, and I solved it
   encapsulating the create widgetC in a DeferredCommand (for your 
   example).

   Its really hard for me to understand the modification you purpose, maybe
   someone from google could see it.
   But I think that if you found a better way of doing something you should
   send a patch and make us all 
   happyhttp://code.google.com/webtoolkit/makinggwtbetter.html(alsoyouwill 
   get
   more help in gwt-code-reviews.appspot.com than here)

   Regards!

   // on the WidgetA.EventType reception is decided to create a widget C
   create widgetC

   On Tue, Jul 26, 2011 at 5:11 PM, david.herv...@gmail.com 

   david.herv...@gmail.com wrote:
No body concerned ?

On 25 juil, 10:50, david.herv...@gmail.com david.herv...@gmail.com
wrote:
 Hi,

 I'm facing a problem when using the simple implementation of the
 EventBus.

 // register widget B to be notified when WidgetA trigger an event
 register handler of WidgetB on WidgetA.EventType

 // dispatch (firingDepth is incremented)
 WidgetA.fireEvent

 // my widget is really called !!! that's good news
 WidgetB.onWidgetAEvent

 // on the WidgetA.EventType reception is decided to create a widget C
 create widgetC

 // this widget register himself to be notified on widgetB events -
 here the widget is registered in the deferredDeltas map (enqueueing)
 register handler of widgetC on WidgetB.EventType

 // widget B fired an event which is never trapped by the widget C
 because the handler of Widget C is in the deferredDeltas AND
 firingDepth is not 0
 WidgetB.fireEvent

 I'm doubtful because I was expected Widget C to receive event from
 Widget B. A work around is to encapsulate the WidgetB.fireEvent into a
 DeferredCommand but it's not really a solution.

 An other solution is to reconsider the usage of firingDepth, I don't
 really know why it is used (actually I know, but avoid concurrency
 modification that way leads to the upper that strange behavior).
 In simple implementation (thread safe) will be to get rid of the usage
 of this firingDepth/deferredDeltas and that getHandlerList return a
 copy of the handlers to go through and that's it:
 We insert directly the handler when they request for registration and
 we fire on the current map of handlers

 Below is a possible implementation of what I think is a better
 implementation (behaviorally speaking) :

 package com.google.web.bindery.event.shared;

 import java.util.ArrayList;
 import java.util.Collections;
 import java.util.HashMap;
 import java.util.HashSet;
 import java.util.List;
 import java.util.ListIterator;
 import java.util.Map;
 import java.util.Set;

 import com.google.web.bindery.event.shared.Event.Type;

 public class MySimpleEventBus extends EventBus {

     private final boolean isReverseOrder;

     /**
      * Map of event type to map of event source to list of their
 handlers.
      */
     private final MapEvent.Type?, MapObject, List? map =
         new HashMapEvent.Type?, MapObject, List?();

     public MySimpleEventBus() {
       this(false);
     }

     /**
      * Allows creation of an instance that fires its handlers in the
 reverse of
      * the order in which they were added, although filtered handlers
 all fire
      * before unfiltered handlers.
      * p
      *
      * @deprecated This is a legacy feature, required by GWT's old
 HandlerManager.
      *             Reverse order is not honored for handlers tied to a
 specific
      *             event source (via {@link #addHandlerToSource}.
      */
     @Deprecated
     protected MySimpleEventBus(boolean fireInReverseOrder) {
       isReverseOrder = fireInReverseOrder;
     }

     @Override
     public H HandlerRegistration addHandler(TypeH type, H handler)
 {
       return doAdd(type, null, handler);
     }

     @Override
     public H HandlerRegistration addHandlerToSource(final
 Event.TypeH type, final Object source

Re: How to package a gwt project into a jar so that it can be included into other projects

2011-07-26 Thread david.herv...@gmail.com
Komal,
you have to consider two packaging for your release in order for your
project to be used in another project.
- one jar for your server side classes (compiled)
- one jar for your client side java file (not compiled) that also
contains the gwt module, in order the users to include your module
into their own gwt module.
that it.

On 25 juil, 15:27, Komal Goyal ko...@ensarm.com wrote:
 Hi,

 I need to package a gwt project into a jar
 and use the implementations of this project ie its client side class
 in the importing projects client package

 and the server side classes to the importing projects server classes

 how will the Impls work in this case..?

-- 
You received this message because you are subscribed to the Google Groups 
Google Web Toolkit group.
To post to this group, send email to google-web-toolkit@googlegroups.com.
To unsubscribe from this group, send email to 
google-web-toolkit+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-web-toolkit?hl=en.



Re: SimpleEventBus : why such a non-predictive behavior implementation ?

2011-07-26 Thread david.herv...@gmail.com
No body concerned ?

On 25 juil, 10:50, david.herv...@gmail.com david.herv...@gmail.com
wrote:
 Hi,

 I'm facing a problem when using the simple implementation of the
 EventBus.

 // register widget B to be notified when WidgetA trigger an event
 register handler of WidgetB on WidgetA.EventType

 // dispatch (firingDepth is incremented)
 WidgetA.fireEvent

 // my widget is really called !!! that's good news
 WidgetB.onWidgetAEvent

 // on the WidgetA.EventType reception is decided to create a widget C
 create widgetC

 // this widget register himself to be notified on widgetB events -
 here the widget is registered in the deferredDeltas map (enqueueing)
 register handler of widgetC on WidgetB.EventType

 // widget B fired an event which is never trapped by the widget C
 because the handler of Widget C is in the deferredDeltas AND
 firingDepth is not 0
 WidgetB.fireEvent

 I'm doubtful because I was expected Widget C to receive event from
 Widget B. A work around is to encapsulate the WidgetB.fireEvent into a
 DeferredCommand but it's not really a solution.

 An other solution is to reconsider the usage of firingDepth, I don't
 really know why it is used (actually I know, but avoid concurrency
 modification that way leads to the upper that strange behavior).
 In simple implementation (thread safe) will be to get rid of the usage
 of this firingDepth/deferredDeltas and that getHandlerList return a
 copy of the handlers to go through and that's it:
 We insert directly the handler when they request for registration and
 we fire on the current map of handlers

 Below is a possible implementation of what I think is a better
 implementation (behaviorally speaking) :

 package com.google.web.bindery.event.shared;

 import java.util.ArrayList;
 import java.util.Collections;
 import java.util.HashMap;
 import java.util.HashSet;
 import java.util.List;
 import java.util.ListIterator;
 import java.util.Map;
 import java.util.Set;

 import com.google.web.bindery.event.shared.Event.Type;

 public class MySimpleEventBus extends EventBus {

     private final boolean isReverseOrder;

     /**
      * Map of event type to map of event source to list of their
 handlers.
      */
     private final MapEvent.Type?, MapObject, List? map =
         new HashMapEvent.Type?, MapObject, List?();

     public MySimpleEventBus() {
       this(false);
     }

     /**
      * Allows creation of an instance that fires its handlers in the
 reverse of
      * the order in which they were added, although filtered handlers
 all fire
      * before unfiltered handlers.
      * p
      *
      * @deprecated This is a legacy feature, required by GWT's old
 HandlerManager.
      *             Reverse order is not honored for handlers tied to a
 specific
      *             event source (via {@link #addHandlerToSource}.
      */
     @Deprecated
     protected MySimpleEventBus(boolean fireInReverseOrder) {
       isReverseOrder = fireInReverseOrder;
     }

     @Override
     public H HandlerRegistration addHandler(TypeH type, H handler)
 {
       return doAdd(type, null, handler);
     }

     @Override
     public H HandlerRegistration addHandlerToSource(final
 Event.TypeH type, final Object source,
         final H handler) {
       if (source == null) {
         throw new NullPointerException(Cannot add a handler with a
 null source);
       }

       return doAdd(type, source, handler);
     }

     @Override
     public void fireEvent(Event? event) {
       doFire(event, null);
     }

     @Override
     public void fireEventFromSource(Event? event, Object source) {
       if (source == null) {
         throw new NullPointerException(Cannot fire from a null
 source);
       }
       doFire(event, source);
     }

     /**
      * @deprecated required by legacy features in GWT's old
 HandlerManager
      */
     @Deprecated
     protected H void doRemove(Event.TypeH type, Object source, H
 handler) {
         doRemoveNow(type, source, handler);
     }

     /**
      * @deprecated required by legacy features in GWT's old
 HandlerManager
      */
     @Deprecated
     protected H H getHandler(Event.TypeH type, int index) {
       assert index  getHandlerCount(type) : handlers for  +
 type.getClass() +  have size: 
           + getHandlerCount(type) +  so do not have a handler at
 index:  + index;

       ListH l = getHandlerList(type, null);
       return l.get(index);
     }

     /**
      * @deprecated required by legacy features in GWT's old
 HandlerManager
      */
     @Deprecated
     protected int getHandlerCount(Event.Type? eventKey) {
       return getHandlerList(eventKey, null).size();
     }

     /**
      * @deprecated required by legacy features in GWT's old
 HandlerManager
      */
     @Deprecated
     protected boolean isEventHandled(Event.Type? eventKey) {
       return map.containsKey(eventKey);
     }

     private H HandlerRegistration doAdd(final Event.TypeH type,
 final Object source,
         final H handler

SimpleEventBus : why such a non-predictive behavior implementation ?

2011-07-25 Thread david.herv...@gmail.com
Hi,

I'm facing a problem when using the simple implementation of the
EventBus.

// register widget B to be notified when WidgetA trigger an event
register handler of WidgetB on WidgetA.EventType

// dispatch (firingDepth is incremented)
WidgetA.fireEvent

// my widget is really called !!! that's good news
WidgetB.onWidgetAEvent

// on the WidgetA.EventType reception is decided to create a widget C
create widgetC

// this widget register himself to be notified on widgetB events -
here the widget is registered in the deferredDeltas map (enqueueing)
register handler of widgetC on WidgetB.EventType

// widget B fired an event which is never trapped by the widget C
because the handler of Widget C is in the deferredDeltas AND
firingDepth is not 0
WidgetB.fireEvent

I'm doubtful because I was expected Widget C to receive event from
Widget B. A work around is to encapsulate the WidgetB.fireEvent into a
DeferredCommand but it's not really a solution.

An other solution is to reconsider the usage of firingDepth, I don't
really know why it is used (actually I know, but avoid concurrency
modification that way leads to the upper that strange behavior).
In simple implementation (thread safe) will be to get rid of the usage
of this firingDepth/deferredDeltas and that getHandlerList return a
copy of the handlers to go through and that's it:
We insert directly the handler when they request for registration and
we fire on the current map of handlers

Below is a possible implementation of what I think is a better
implementation (behaviorally speaking) :


package com.google.web.bindery.event.shared;

import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
import java.util.ListIterator;
import java.util.Map;
import java.util.Set;

import com.google.web.bindery.event.shared.Event.Type;

public class MySimpleEventBus extends EventBus {

private final boolean isReverseOrder;

/**
 * Map of event type to map of event source to list of their
handlers.
 */
private final MapEvent.Type?, MapObject, List? map =
new HashMapEvent.Type?, MapObject, List?();

public MySimpleEventBus() {
  this(false);
}

/**
 * Allows creation of an instance that fires its handlers in the
reverse of
 * the order in which they were added, although filtered handlers
all fire
 * before unfiltered handlers.
 * p
 *
 * @deprecated This is a legacy feature, required by GWT's old
HandlerManager.
 * Reverse order is not honored for handlers tied to a
specific
 * event source (via {@link #addHandlerToSource}.
 */
@Deprecated
protected MySimpleEventBus(boolean fireInReverseOrder) {
  isReverseOrder = fireInReverseOrder;
}

@Override
public H HandlerRegistration addHandler(TypeH type, H handler)
{
  return doAdd(type, null, handler);
}

@Override
public H HandlerRegistration addHandlerToSource(final
Event.TypeH type, final Object source,
final H handler) {
  if (source == null) {
throw new NullPointerException(Cannot add a handler with a
null source);
  }

  return doAdd(type, source, handler);
}

@Override
public void fireEvent(Event? event) {
  doFire(event, null);
}

@Override
public void fireEventFromSource(Event? event, Object source) {
  if (source == null) {
throw new NullPointerException(Cannot fire from a null
source);
  }
  doFire(event, source);
}

/**
 * @deprecated required by legacy features in GWT's old
HandlerManager
 */
@Deprecated
protected H void doRemove(Event.TypeH type, Object source, H
handler) {
doRemoveNow(type, source, handler);
}

/**
 * @deprecated required by legacy features in GWT's old
HandlerManager
 */
@Deprecated
protected H H getHandler(Event.TypeH type, int index) {
  assert index  getHandlerCount(type) : handlers for  +
type.getClass() +  have size: 
  + getHandlerCount(type) +  so do not have a handler at
index:  + index;

  ListH l = getHandlerList(type, null);
  return l.get(index);
}

/**
 * @deprecated required by legacy features in GWT's old
HandlerManager
 */
@Deprecated
protected int getHandlerCount(Event.Type? eventKey) {
  return getHandlerList(eventKey, null).size();
}

/**
 * @deprecated required by legacy features in GWT's old
HandlerManager
 */
@Deprecated
protected boolean isEventHandled(Event.Type? eventKey) {
  return map.containsKey(eventKey);
}

private H HandlerRegistration doAdd(final Event.TypeH type,
final Object source,
final H handler) {
  if (type == null) {
throw new NullPointerException(Cannot add a handler with a
null type);
  }
  if (handler == null) {
throw new NullPointerException(Cannot add a null handler);
  }

  

Re: Problem with UTF-8

2010-08-03 Thread david.herv...@gmail.com
Hi,

Have you specified the UTF-8 before creating file or just change it
while your files were created ?
I've just copy paste your Label in a project where .java file are
UTF-8 encoded and everything works fine.
Just check on one of your file the properties that is attributed to it
(contextual menu on one of the incriminated java file): here you must
have UTF-8.


On Aug 2, 9:38 pm, Kiarash email@gmail.com wrote:
 I have a problem with Swedish letters coded in Java files as when I
 make a Label with Swedish letters,
 Label myLabel = new Label(här är något på Svenska);
 the Swedish letters changes to strange characters in the HTML file.

 I am using Eclipse.I made sure that:
 the html file has meta http-equiv=content-type content=text/html;
 charset=UTF-8
 the text file properties are UTF-8
 the project properties are UTF-8
 the edit set encoding are UTF-8

 Anybody facing the same problem or have a solution... thanx!

-- 
You received this message because you are subscribed to the Google Groups 
Google Web Toolkit group.
To post to this group, send email to google-web-tool...@googlegroups.com.
To unsubscribe from this group, send email to 
google-web-toolkit+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-web-toolkit?hl=en.



Re: is ZK better than GWT..?

2010-08-02 Thread david.herv...@gmail.com
ZK annonces that their approach is a server side centric. Conceptually
speaking GWT and ZK are really two different approaches.
Main argument for using ZK WAS they have a declarative approach to
build the UI. This gap is now obsolote since GWT has the UIBinder.

To my point of view the main advantages using GWT are :
 - its capabality to deal with several browser specific behavior (and
more over to let the user add browser specific behavior via deferred
binding).
 - its client side approach : your server can support load more easily
 - its more natural for Programmers who came from Swing/AWT/SWT/GTK...

On the contrary the learning curve is may be stronger


On Aug 1, 10:08 am, Sebastian Rothbucher
sebastian.rothbuc...@clarities.de wrote:
 HI akhil,

 ZK does not have a 2nd compilation step into JS (and can thus use all
 of Java on both sides). However, you have ongoing client-server
 communication (speed!), you don't have the optimizations google offers
 for your and from what I remember from using ZK, the framework is by
 far not as straightforward: with GWT, you add a widget to a root panel
 and just program the UI; with ZK, you have binding declarations,
 event / update issues, ...  At least I (but it may be me) had much
 more trouble and many more problems to solve before the ZK logic was
 in place (e.g. augment table contents). Finally, you re-use the best
 practices long established in traditional UI programming and this is
 where RIA also aims for when using GWT.

 So for a quick and optimized entry into the subject of RIA - and also
 for quickly implementing larger stuff with a stable framework, I'd use
 GWT. I've been using it for a while now and it turned out to be a very
 solid ground. (Maybe ZK would have done the same when I'd have
 followed it further - all starting issues can surely be solved there
 as well; however, I've never regretted choosing GWT).

 Hope this helps - best Regards
    Sebastian

 On 31 Jul., 12:37, matthieu vidal m...@matthieu-vidal.com wrote:



  Regarding the ZK license and the community arround it, I don't think.

  On 31 juil, 07:41, akhil shastri.ak...@gmail.com wrote:

   pls help me to decide  isZK

   ZK better than GWT..?

   Regards,
   Akhil

-- 
You received this message because you are subscribed to the Google Groups 
Google Web Toolkit group.
To post to this group, send email to google-web-tool...@googlegroups.com.
To unsubscribe from this group, send email to 
google-web-toolkit+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-web-toolkit?hl=en.



Re: CssResources @external and tail-globs

2010-07-28 Thread david.herv...@gmail.com
Thanks, I just have to wait !

On Jul 27, 7:00 pm, lineman78 linema...@gmail.com wrote:
 Apparently the doc has been updated prematurely and this feature is
 not available in 2.0, but is in 2.1.

 On Jul 27, 7:43 am, david.herv...@gmail.com



 david.herv...@gmail.com wrote:
  Hello,

  as mentionned in the CssResource wiki 
  :http://code.google.com/p/google-web-toolkit/wiki/CssResource#External...
  it may be possible to match tail glob pattern in the annotated
  @external CSS Class.

  I've tried this feature with no success. Only the @external fixed CSS
  name are not obfuscated but the tail regexp seems not to be applied ?

  Did someone already experiment this with success ?

  thanks

-- 
You received this message because you are subscribed to the Google Groups 
Google Web Toolkit group.
To post to this group, send email to google-web-tool...@googlegroups.com.
To unsubscribe from this group, send email to 
google-web-toolkit+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-web-toolkit?hl=en.



CssResources @external and tail-globs

2010-07-27 Thread david.herv...@gmail.com
Hello,

as mentionned in the CssResource wiki :
http://code.google.com/p/google-web-toolkit/wiki/CssResource#External_and_legacy_scopes
it may be possible to match tail glob pattern in the annotated
@external CSS Class.

I've tried this feature with no success. Only the @external fixed CSS
name are not obfuscated but the tail regexp seems not to be applied ?

Did someone already experiment this with success ?

thanks

-- 
You received this message because you are subscribed to the Google Groups 
Google Web Toolkit group.
To post to this group, send email to google-web-tool...@googlegroups.com.
To unsubscribe from this group, send email to 
google-web-toolkit+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-web-toolkit?hl=en.



Re: Dependency injection perf issues

2010-07-12 Thread david.herv...@gmail.com
Hi,

the fact that you are using DI does not change your startup time. Your
application will take approximately the same time to load if you does
the injection by hand.
Actually, I think you want to create your view only when you really
need it instead of instantiating everything at startup. When using
Gin, it is common to let the
framework inject everything for you without considering what have to
be instantiate and when. Keep in mind that Gin is just here to help
you structuring your application.
If you want to instantiate view not at startup time but while using
application consider injecting ProviderT instead of directly T. This
way you have the ability
to instantiate what you need when you need via those providers. It
will be a little bit tricker, because you will have to manager when to
instantiate your views but it's not
a Gin matter

regards

On Jul 9, 8:29 pm, mk munna.kaka.ch...@gmail.com wrote:
 I used DI i.e. used @Inject to inject (Presenter, EventBus) in all of
 Views.

 Now it seems that if I use DI than all views are generated at web app
 intial start time in browser. Thus start time becomes slow. Am I
 right? ( I think I heard something like this before also but just want
 to validate).

 So if above is true than using @Inject is no good .. right? ( or where
 can we use @Inject ).

 Can we use use @Inject to lazily create views instead of web app start
 time?

-- 
You received this message because you are subscribed to the Google Groups 
Google Web Toolkit group.
To post to this group, send email to google-web-tool...@googlegroups.com.
To unsubscribe from this group, send email to 
google-web-toolkit+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-web-toolkit?hl=en.



Re: Guice with client-side GWT

2010-05-27 Thread david.herv...@gmail.com
As Kevin mentionned, Gin is the dependency injection framework for
GWT.
There are some subtleties compared to Guice as the java code is
transformed in JS (for example you can not request an injector for an
instance of a class). But it is quite the same idea (Gin is partially
based on Guice) and the addressed topic is the same : dependencies
injection.
Cheers

On 27 mai, 06:21, Kevin Qiu kevin.jing@gmail.com wrote:
 Is thishttp://code.google.com/p/google-gin/what you're looking for?



 On Wed, May 26, 2010 at 9:11 PM, Blessed Geek blessedg...@gmail.com wrote:
  Nope, I am not asking about Guice with RemoteServiceServlet for RPC.

  Is it possible to use Guice on GWT widgets and related client-side
  manoeuvres?

  I don't expect the answer to be yes because the native code for GWT
  client is javascript not JVM byte-code.

  So, any plans for Guice on client-side GWT? One that works with
  annotation on Java code but performs injection on javascript
  generation hand-in-hand with GWT compiler?

  Are there already any dependency injection frameworks somewhere out
  there for GWT clients?

  It would be a feature specifically useful when working with ext-gwt
  Controller and View.

  --
  You received this message because you are subscribed to the Google Groups
  Google Web Toolkit group.
  To post to this group, send email to google-web-tool...@googlegroups.com.
  To unsubscribe from this group, send email to
  google-web-toolkit+unsubscr...@googlegroups.comgoogle-web-toolkit%2Bunsubs 
  cr...@googlegroups.com
  .
  For more options, visit this group at
 http://groups.google.com/group/google-web-toolkit?hl=en.

-- 
You received this message because you are subscribed to the Google Groups 
Google Web Toolkit group.
To post to this group, send email to google-web-tool...@googlegroups.com.
To unsubscribe from this group, send email to 
google-web-toolkit+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-web-toolkit?hl=en.



Re: new GWT MVP article (part 2)

2010-04-26 Thread david.herv...@gmail.com
Hi,

originally the MVP pattern was design for separating the view from its
logic and the model it is displaying (as the MVC). Since the arriving
of UIBinder I found the word View misused. Actually, strictly speaking
the View is contained in the ui.xml file and the Controller is the
corresponding java file which is implementing the corresponding logic
and instanciation. This file merely represents a kind of Controller.
The Presenter used in this tutorial is (for me) nothing more than a
ControllerProvider which enable the ability to provide differents
implementations of the view logic.

What I'm founding strange is the fact that their are using the same
acronym (MVP) for two differents approaches :
 - first one was Presenter centered as the abstraction was done on
Display and aggregation were done against the presenter
 - second one was Display AND Presenter centered as the abstraction is
done on Presenter and Display the both referencing each other.

But this approach is mainly due to the fact that UIBinder is removing
a lot of boiler plate code from event handling (and first MVP tutorial
was not using it), but in the same way UIBinder tends people to adapt
the original MVP pattern to be able to use all its power !
That why there is so much reflexion to mix UIBinder and MVP together.

cheers



On Apr 22, 9:27 am, interdev jason.ved...@gmail.com wrote:
 Hello everyone,
 have you seen the new MVP Architecture article from google 
 ?http://code.google.com/webtoolkit/articles/mvp-architecture-2.html

 they have changed the structure slightly, instead of having a View and
 a Presenter which has an inner Interface (Display), aside from the
 UiBinder part, they now have a View interface which has an inner
 Presenter interface !

 1- what do you all think ? are these yet another level of abstraction/
 indirection necessary ?

 2- when google wants to address problem of Nested/Layered presenters ?
 header/body/footer, and body having its own dockpanellayout structure.

 3- what do you think of presenter.go(container) ? and navigation/
 history token inside multiple IF statements ?

 i think these are more serious to address than introducing an
 additional view interface which has an inner interface !

 4- what do you think of DTO solution presented in the article, is it
 scalable ? do you follow it or stick with your twig, gilead
 framework ?

 --
 You received this message because you are subscribed to the Google Groups 
 Google Web Toolkit group.
 To post to this group, send email to google-web-tool...@googlegroups.com.
 To unsubscribe from this group, send email to 
 google-web-toolkit+unsubscr...@googlegroups.com.
 For more options, visit this group 
 athttp://groups.google.com/group/google-web-toolkit?hl=en.

-- 
You received this message because you are subscribed to the Google Groups 
Google Web Toolkit group.
To post to this group, send email to google-web-tool...@googlegroups.com.
To unsubscribe from this group, send email to 
google-web-toolkit+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-web-toolkit?hl=en.



Re: UIBinder and CSS resources obfuscation

2010-04-15 Thread david.herv...@gmail.com
Yep, I know the @external does the trick, but I was wondering if it
exists some kind of global '@external' annotation to tell UIBinder not
to obfuscate all classes.
@Jeff Chimene : I think you right.

My fear is that the UIBinder has to keep this kind of obfuscation/
renaming rules to garantee the non collision in css class name.
But, what can't we imagine an option to not obfuscate css classes and
raise an error when a collision occured ?



On Apr 14, 10:32 pm, Jeff Chimene jchim...@gmail.com wrote:
 On 04/14/2010 01:27 PM, davidroe wrote:

  there was a time when I was also looking for this and was unable to
  find the answer. pls report back to the group if you come across the
  solution.

  thanks.

 Try using the @external annotation

 @external gwt-TextBox;
 .gwt-TextBox {
         border-color: Black Black Gray;
         border-style: solid double groove solid;
         border-width: thin;
         font-size: small;
         padding: 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-tool...@googlegroups.com.
To unsubscribe from this group, send email to 
google-web-toolkit+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-web-toolkit?hl=en.



Re: UIBinder and CSS resources obfuscation

2010-04-15 Thread david.herv...@gmail.com
Yep, I have already tried the @external and it does the trick, but I
was wondering if it
exists some kind of global '@external' annotation to tell UIBinder not
to obfuscate all classes. Or perhaps a global property to do that.


My fear is that the UIBinder has to keep this kind of obfuscation/
renaming rules to garantee the non collision in css class name.
But, why can't we imagine an option to not obfuscate css classes and
raise an error when a collision occured ?

On Apr 14, 10:32 pm, Jeff Chimene jchim...@gmail.com wrote:
 On 04/14/2010 01:27 PM, davidroe wrote:

  there was a time when I was also looking for this and was unable to
  find the answer. pls report back to the group if you come across the
  solution.

  thanks.

 Try using the @external annotation

 @external gwt-TextBox;
 .gwt-TextBox {
         border-color: Black Black Gray;
         border-style: solid double groove solid;
         border-width: thin;
         font-size: small;
         padding: 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-tool...@googlegroups.com.
To unsubscribe from this group, send email to 
google-web-toolkit+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-web-toolkit?hl=en.



Re: UIBinder and CSS resources obfuscation

2010-04-14 Thread david.herv...@gmail.com
Thanks for the reply but I've already tried this solution but as I
have mentionned in my first post, it prefix all css class with the
package name in which the css is place.
I will  have a look in Resources.gwt.xml.


On Apr 13, 11:16 pm, Sripathi Krishnan sripathikrish...@gmail.com
wrote:
 See the file Resources.gwt.xml .. It has a bunch of properties that you can
 specify to control how CSS is generated..
 I haven't tried it, but putting this in your module.gwt.xml should do the
 trick.

 set-configuration-property name=CssResource.style value=pretty /



 --Sri

 On 13 April 2010 13:32, david.herv...@gmail.com 
 david.herv...@gmail.comwrote:

  Hi,
  I'm currently searching around the web to found out how to tell
  UIBinder not to perform obfuscation (at-all) on css class. I've read
  codes samples in which it is tell to put inside the .gwt.xml the
  property CssResource.obfuscationPrefix  to empty. But the css class
  name doesn't have any links with original name. I've tried to combined
  with the CssResource.style to pretty but the css class are still
  prefixed with the package name in which the css resources are located.

  Prefixing each class with @external in css is some kind of solution,
  but doing it for all class in all css I want to test is not a real
  solution.

  So, my question is : Is there any options for telling UIBinder not to
  obfuscate css class ? (like a global @external)

  Thanks in advance

  --
  You received this message because you are subscribed to the Google Groups
  Google Web Toolkit group.
  To post to this group, send email to google-web-tool...@googlegroups.com.
  To unsubscribe from this group, send email to
  google-web-toolkit+unsubscr...@googlegroups.comgoogle-web-toolkit%2bunsubscr...@googlegroups.com
  .
  For more options, visit this group at
 http://groups.google.com/group/google-web-toolkit?hl=en.

-- 
You received this message because you are subscribed to the Google Groups 
Google Web Toolkit group.
To post to this group, send email to google-web-tool...@googlegroups.com.
To unsubscribe from this group, send email to 
google-web-toolkit+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-web-toolkit?hl=en.



UIBinder and CSS resources obfuscation

2010-04-13 Thread david.herv...@gmail.com
Hi,
I'm currently searching around the web to found out how to tell
UIBinder not to perform obfuscation (at-all) on css class. I've read
codes samples in which it is tell to put inside the .gwt.xml the
property CssResource.obfuscationPrefix  to empty. But the css class
name doesn't have any links with original name. I've tried to combined
with the CssResource.style to pretty but the css class are still
prefixed with the package name in which the css resources are located.

Prefixing each class with @external in css is some kind of solution,
but doing it for all class in all css I want to test is not a real
solution.

So, my question is : Is there any options for telling UIBinder not to
obfuscate css class ? (like a global @external)

Thanks in advance

-- 
You received this message because you are subscribed to the Google Groups 
Google Web Toolkit group.
To post to this group, send email to google-web-tool...@googlegroups.com.
To unsubscribe from this group, send email to 
google-web-toolkit+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-web-toolkit?hl=en.