Re: Working with Dates/Timezones

2012-08-01 Thread Rob Coops
Hi,

Is it not possible when the client requests to print a document to make the
client timezone part of the request? In that case you can server side very
easily convert from the stored TZ to the client TZ before printing...

You should simply be able to ask the client what it's timezone is. In pure
Javascript it would be: var offset = new Date().getTimezoneOffset(); which
will return you the amount of minutes you are offset so a UTC+2 would
return 120 where UTC-10 would result in -600 etc...

You could even allow your client to override their system TZ and print the
document as if it where printed in a TZ of their choice.

Regards,

Rob


On Wed, Aug 1, 2012 at 5:12 PM, Jens jens.nehlme...@gmail.com wrote:

 Hi,

 how do you work with dates/timezones in your apps? I have the following
 situation:

 (Client browser, app server, database server live in Germany and we have
 UTC+1 or UTC+2 when daylight saving time is active)

 A user chooses a Date + Time (e.g. from GWT's DateBox) and we send that
 date object to the server and store it in database. On the client side
 everything is visually consistent until we want to print something. The
 report is generated on the server and the date that the user has entered *
 can* be off by 1 hour on the server which results in wrong dates in the
 report compared to the information visible inside the client app. Also if
 you use DateBox and only display the day portion of a date the date will
 still be off by one hour but to the user it is visible as being off by one
 day in the report because the date contains 00:00:00 as time portion which
 will become 23:00:00 for the previous day on the server.

 As an example the user may chooses 26.10.1951 12:00:00 via the GWT
 DateBox. Chrome, Safari, IE and Opera think (java.util.Date delegates to
 JsDate class in compiled app) that daylight saving time is active for that
 date (UTC+2 and thus date.getTimezoneOffset() returns -120 minutes).
 Unfortunately we don't have daylight saving time from 1950 to 1979 at all
 in Germany and our app server (= JVM) / database server knows this fact
 which results in a differently rendered date on the server. So if we render
 that date on the server its off by one hour (UTC+2 on client vs. UTC+1 on
 server). Firefox does correctly treat the date as UTC+1. On the other hand
 there are other dates where Firefox fails but other browsers do it
 correctly.

 As the GWT DateBox uses a DefaultFormat that uses DateTimeFormat and calls
 dtf.format(date) without a timezone I provided a custom Formatter that
 explicitly uses GWT's europeBerlin timezone. Now the GWT DateBox shows
 26.10.1951 11:00:00 because GWT's timezone provided to the DateTimeFormat
 detects that no day light saving time is active at this date. Now client
 and server render the date the same although the browser created it
 incorrectly with UTC+2. BUT sadly there are other dates where GWT's
 timezone information also failes and differs from the server timezone
 information.

 So short story: Its currently impossible to create a consistent behavior
 between client and server for certain dates. It seems like that GWT's
 timezone info and the browsers native timezone infos have different data
 than the tz database used by Unix / Linux / Java / database server. There
 are also differences between browsers itself.

 So how do you guy work with dates in your app? I mean as an example it can
 be as easy as selecting a birthday (without time = 00:00:00) and use that
 birthday on server side in a report. Now you are maybe a day older in the
 report if you live in germany :-)

 The only partial solution we can think of is to always use 12:00:00 as
 time if you are only interested in the day portion of date (to avoid off by
 one day problem) and to use a fixed non DST day (maybe 01.01.1970) which is
 safe in all browsers if you are only interested in the time portion of date
 (to make sure its rendered the same on client/server). Obviously this also
 means that we can never store day and time in a single date instance.

 So whats your experience with timezones and/or do you have other possible
 solutions? Or have you never noticed this discrepancy in your timezone? In
 Dev mode everything works fine, because its Java like on the app server.

 -- J.

 --
 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/-/q04nxG_F8BkJ.
 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.


-- 
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 

Re: Lots of DIVs

2012-01-18 Thread Rob Coops
On Wed, Jan 18, 2012 at 5:48 PM, Markus mca...@gmail.com wrote:

 Hi there,

 I just stumbled upon this thread, and would like to ask a quick question
 regarding this:

 While I like agree that this is a pretty clever way to measure EMs, etc.,
 it
 gives me a problem with all browsers except Chrome: the browsers show a
 horizontal scrollbar as soon as one of these 10cm-wide divs extends beyond
 the
 edges of the window.

 Is there a way to prevent this without sacrificing functionality (like a
 display:none or something), or can it be disabled, since I don't really
 need any
 units other than px in my page?

 Thank you very much for you help,

  Markus

 --
 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.


Hi Markus,

Yes you can simply tell the window that you are putting the elements in
that there should be no overflow (css this is overflow-x, overflow-y or
overflow: visible, auto, hidden, scroll (same as auto) or inherit) for GWT
you can either do this via css or you can address the property of the
element or window you are placing your div's in and tell that exactly the
same as above listed for css.

Personally I would advice to always disable all scroll bars and only later
on when you determine you need them enable them again this just makes sure
that they only appear where you want them and do not show up in places
where they would look out of place even when a user resizes the screen to
an extreem small width or height. But opinions there will vary and I am not
prepared to get into a discussion about that so I will just mention this
practice and leave the rest up to you ;-)

Regards,

Rob

-- 
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: How to debug CSS

2011-07-21 Thread Rob Coops
I use Google Chrome for this, (CTRL+SHIFT+i) then you can walk the DOM and
find the element see exactly which stylesheets are influencing this element
and what the computed style is, including inherited styles etc. It really is
very very handy, Firebug is pretty much the same trick for Firefox (which I
am just not a big fan of hence my usage of Chrome)

In IE I have no idea what you could use I guess that there might be a IE
implementaiton of Firebug but I have no idea I try and avoid using IE as
much as I can (been using it since version 3 and never really liked it much)

On Thu, Jul 21, 2011 at 3:49 PM, Jeff Larsen larse...@gmail.com wrote:

 I usually just use firebug and I can figure out which styles are which by
 looking at the content.

 --
 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/-/U1S2x3wocJQJ.

 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.


-- 
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.



List item encoding issue...

2011-07-16 Thread Rob Coops
Working on a very simple dropdown box but this time with a special
character in it: . How hard could it be right?

g:ListBox
  g:itemui:msg#60;4/ui:msg/g:item
/g:ListBox

But this results in the following:

select
 optionlt;4/option
/select

Which on the browser shows as:

lt;4

Being smarter then that and putting in lt; instead leaves it untranslated
so it seems that the '' and for that matter the '' sign cannot be used.
Though a qout; and a #39; ( and ' respectively) are show correctly so it
does work in some cases and it certainly is not something that should never
work... Has anyone else run into this and if so do you have a solution to
this problem?

By the way I'm using GWT 2.3

-- 
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: my biggest problem with gwt

2011-07-15 Thread Rob Coops
On Fri, Jul 15, 2011 at 1:23 PM, Dennis Haupt d.haup...@googlemail.comwrote:

 it's the speed. not the execution speed, that one is good enough.
 what i mean is the compilation speed. compiling my complete java project
 takes 30 seconds. compiling the tiny gwt part of it takes 91 seconds.
 activating the hosted mode takes about 1-2 minutes (didn't measure, feels
 like it). debugging like this takes forever.

 the write - test - debug - fix - cycle slows me down a lot. is there any
 way to fix that problem?

 --
 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.


The speed of compilation and the starting in the dev server is indeed a
little slow, but then again if you look at what it is doing...

Take Java code and transform that into javascript and html, then rinse and
repeat 6 times for all supported browsers and versions. Then repeat that n
times once for each language specified. In the end that means that where you
compile your java project once you compile your gwt bit at least six times
yet it only takes 3 times as long...
One thing I did to speed things up is remove all languages other then
default this saves a lot of compilation steps and reduces the time it takes
to compile significantly. After all once you have confirmed that a string is
translated there is little point in doing that again for every debug round.

Another easy thing to do is reduce the compilation amount, do you really
need to recompile every single time? Most of the changes in your code can be
tested without having to recompile just redeploy the solution and all client
side code will/should (it does sometimes fail) run in the new updated
version.
Also pretty much all professional outfits use a nightly build to put the
whole lot together, build and deploy it all beyond that most of the time
developers work on their own portion of the code which they can compile and
test without always needing to compile the full project.

Then there is one other thing which I know won't sound nice but it is true.
A gut feeling of 1 minute or even several minutes usually turns out to be
way less then that. Just like with performance testing you cannot trust your
feelings you have to measure things before you can say for sure. For
instance it has been found that one can make an application a lot faster by
showing the user a progress bar and status messages about what the program
is doing. The program is no faster but the user has the feeling stuff is
happening thus they feel that things are going faster even though there is
no factual difference in the execution speed.
So never trust a feeling, at least not when it comes to the measuring of
idle time waiting for a computer, as it is very often quite far of from
reality.

Regards,

Rob

-- 
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: Playing MP3 and AVI in GWT application

2011-07-14 Thread Rob Coops
Then there is only one real solution, Adobe Flash...

Pretty much everyone and their mother has a Flash Player installed (for
those that do not use HTML5 (Apple iStuff is the main group there without
Flash)). If you set the system to prefer HTML5 and then switch back to Flash
if this is not available you are future proof and able to deal with what
ever way that coin will flip.

For the widget simply use two and load which ever one the users browser will
support. If the users browser is capable to deal with HTML5 like Chrome or
Firefox you simply load the HTML5 widget, if you are being visited by an
older IE version simply push the Flash version over.

Using MVP you would simply have to views and a few lines of code to decide
which one to show the user not unlike deciding to show the user the mobile
version of the view instead of the full fledged desktop version.

Regards,

Rob

On Thu, Jul 14, 2011 at 10:12 AM, shahid shahidza...@gmail.com wrote:

 The trouble is HTML 5 is not supported on majority of the user's
 browser. Also what do you do for backward compatibility?

 On Jul 13, 5:45 pm, David Chandler drfibona...@google.com wrote:
  HTML5 to the rescue...
 
  http://www.slideshare.net/turbomanage/gwt-plus-html-5
 
  http://google-web-toolkit.googlecode.com/svn/javadoc/2.3/com/google/g...
 
  http://google-web-toolkit.googlecode.com/svn/javadoc/2.3/com/google/g...
 
  The APIs are changing slightly in GWT 2.4 to enable you to more easily
  specify multiple formats.
 
  /dmc
 
 
 
 
 
 
 
 
 
  On Wed, Jul 13, 2011 at 12:10 PM, shahid shahidza...@gmail.com wrote:
   What is the best way to support playing MP3(audio) and AVI (video)
   files in a GWT application. We have gone a long way into developing
   our application on top of GWT and now we have a requirement to support
   playing mp3 and avi files. However I can't find a widget or player
   that I can use with GWT to support both of these formats. Has anyone
   used this functionality in your application and how? What is the best
   practice ?
 
   --
   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.
 
  --
  David Chandler
  Developer Programs Engineer, GWT+GAE
  w:http://code.google.com/
  b:http://turbomanage.wordpress.com/
  b:http://googlewebtoolkit.blogspot.com/
  t: @googledevtools

 --
 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.



-- 
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: NumberFormat and German Locale

2011-07-11 Thread Rob Coops
Default locale is actually default, not necessarily the local set.

I don't have access to my code at the moment so I'll have to do this from
the top of my head and without actually working code... but I'll give it a
try.

When a new user accesses the app I check the locale, to see what this is set
to, default or something else, if it is set to default then I force it to
the locale inferred by the user's IP address, if I have this local available
otherwise I set it to English.
There is such a thing as default in the list of locale's which usually is
_EN as far as I know.

I think what you are seeing is that the default locale you are using is
actually default (_EN) thus the number format is most likely set to
#,##0.0## instead of the #.##0,0## you are trying to use. I would suggest
simply telling the number formatter to use the _DE format (or simply the
same as the locale is set for for the user ;-)

Sorry for the lack of code, that the explanation is clear enough without it.

Regards,

Rob


On Mon, Jul 11, 2011 at 10:06 AM, tdk kloe...@ics.de wrote:

 I have severe problems, understanding and using
 com.google.gwt.i18n.client.Numberformat, hoping somebody out there can
 help and enlighten me.

 When I try to get a formatter via NumberFormat.getFormat(pattern) I
 get an InvalidPatternException even so my pattern is valid within the
 german locale, eg #.##0,0##.
 I know that the locale is set correctly and used by my app, because
 all the default texts, eg when loading data, show up in german.

 The documentation (and posts in various forms) say, that NumberFormat
 uses the default locale to get a formatter, with a specific pattern,
 which I assume in my case is de_DE, because it is set to this. So what
 am I doing wrong, am I missing?

 I'm using GWT 2.3

 --
 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.



-- 
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.



How to fire an CloseEvent on a DisclosurePanel?

2011-07-10 Thread Rob Coops
Hi all,

I've been pulling my hair out for a while now but I just cant figure it
out...

The idea is really simple a bunch of DisclosurePanels in a VerticalPanel,
whenever one of the DisclosurePanels opens all others close.

The simple way is just loop over the widgets in the Vertical panel, check if
they match the opening panel, if not call setOpen(false); and hey presto
there can be only one.

But I want the animation with that because without it the result is just not
pretty enough. So I looked for a setOpen(boolean state, boolean animate);
but that does not exist. Then a simple call to the panel telling it to close
and the rest should sort it self out. So I call DisclosurePanel.fireEvent(
... and there is where I get stuck as I cannot figure out how to fire the
CloseEvent. My java knowledge or well lack there of is most likely what is
causing me not to be able to work it but I'm trying to learn.

Anyway I have spend a good few hours with Google and the result is that no
one seems to want to fire the CloseEvent (just catch it on all different
kinds of panels and the browser window it self). I spend some time looking
at the test cases which should and do test the opening and closing in an
automated way but the code that is being used there but for a test case the
animation is not really possible to test so here the only thing that is done
is calling setOpen(true/false)) which is not what I am looking for.

If anyone out there knows how to do something as simple as programatically
click on the DisclosurePanel header then I hope they will share this
knowledge with me :-)

Regards,

Rob

-- 
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: GWT Widget styling using CSS and UiBinder

2011-07-08 Thread Rob Coops
Here is what I did to test this:

!DOCTYPE ui:UiBinder SYSTEM http://dl.google.com/gwt/DTD/xhtml.ent;
ui:UiBinder xmlns:ui=urn:ui:com.google.gwt.uibinder
 xmlns:g=urn:import:com.google.gwt.user.client.ui
xmlns:p1=urn:import:com.google.gwt.user.datepicker.client
g:HTMLPanel
 p1:DatePicker/
/g:HTMLPanel
/ui:UiBinder

(can't be more basic then that)

And in my css file I have simply added the following lines:
.gwt-DatePicker { font-size: 40pt; }
.datePickerMonthSelector { color: red; }
.datePickerMonth { font-weight: bold; }

I did this in a new project where I did nothing more then simply alter the
.css file and create this one UiBinder bit of code, adding it directly to
the root layout panel (I like standards mode :-) I am not using the
CSSResource interface and I found that if you do the following the styles
are ignored:

!DOCTYPE ui:UiBinder SYSTEM http://dl.google.com/gwt/DTD/xhtml.ent;
ui:UiBinder xmlns:ui=urn:ui:com.google.gwt.uibinder
 xmlns:g=urn:import:com.google.gwt.user.client.ui
xmlns:p1=urn:import:com.google.gwt.user.datepicker.client
ui:style
 .gwt-DatePicker { font-size: 40pt; }
.datePickerMonthSelector { color: red; }
 .datePickerMonth { font-weight: bold; }
.datePickerPreviousButton {  }
.datePickerNextButton {  }
 .datePickerDays {  }
.datePickerWeekdayLabel {  }
.datePickerWeekendLabel {  }
 .datePickerDay {  }
.datePickerDayIsToday {  }
.datePickerDayIsWeekend {  }
 .datePickerDayIsFiller {  }
.datePickerDayIsValue {  }
.datePickerDayIsDisabled {  }
 .datePickerDayIsHighlighted {  }
.datePickerDayIsValueAndHighlighted {  }
 /ui:style
g:HTMLPanel
p1:DatePicker/
 /g:HTMLPanel
/ui:UiBinder

Now personally I am very very much against inline styles or any styles other
then in a separate stylesheet so I actually don't mind that this does not
work. Though I do not see why it wouldn't as the classes are applied to the
elements so the UiBinder should not ignore this code just because it is not
assigned later on using addStyleNames or setStyleName but it seems
that optimization has removed this bit of code from the final product as it
sees it as never used. (Unless I am totally crazy and doing this completely
wrong)

As far as examples and documentation goes I agree the GWT documentation is
though extensive very much a trail and error thing which quite often feels
incomplete or assuming a bit more knowledge of the GWT framework then a
beginner with it can have.

Anyway the styles do get applied though it might be that using CSSResource
the file is loaded to early and the default style sheet from GWT gets
loaded after overwriting your styles at least that is the only reason I can
come up with why it would not work in your case.

Hope this helps,

Rob


On Fri, Jul 8, 2011 at 8:17 AM, vik vmgu...@gmail.com wrote:

 Thanks for the reply Rob. I did try the piece of code you have pasted
 even previously but it did not work. Even a simple rule like a color
 change or a bg-color change within all the parenthesis don't work.
 This technique doesn't work if I put it in the ui.xml nor does it work
 in a .css file referred as a CSSResource interface. Again, the
 examples online are incomplete. If possible, please share a working
 example. Thank you again!

 Vikram

 On Jul 7, 9:12 pm, Rob Coops rco...@gmail.com wrote:
  On Thu, Jul 7, 2011 at 11:09 AM, vik vmgu...@gmail.com wrote:
   Can somebody please post a simple example on how to style a 'fairly-
   complex' widget like the gwt-DatePicker with different colors and
   assets? There are a few examples online for the date picker but they
   either are incomplete or don't use the UiBinder technique. I would
   like to use the UiBinder ui.xml files to store information as in
   colors, bg images etc. Thanks!
 
   --
   You received this message because you are subscribed to the Google
 Groups
   Google Web Toolkit group.
   To post to this group, send email to
 google-web-toolkit@googlegroups.com.
   To unsubscribe from this group, send email to
   google-web-toolkit+unsubscr...@googlegroups.com.
   For more options, visit this group at
  http://groups.google.com/group/google-web-toolkit?hl=en.
 
  Hi Vik,
 
  I would suggest using the build in styles
  CSS Style Rules
 
  .gwt-DatePicker { }
  .datePickerMonthSelector { the month selector widget }
  .datePickerMonth { the month in the month selector widget }
  .datePickerPreviousButton { the previous month button }
  .datePickerNextButton { the next month button }
  .datePickerDays { the portion of the picker that shows the days }
  .datePickerWeekdayLabel { the label over weekdays }
  .datePickerWeekendLabel { the label over weekends }
  .datePickerDay { a single day }
  .datePickerDayIsToday { today's date }
  .datePickerDayIsWeekend { a weekend day }
  .datePickerDayIsFiller { a day in another month }
  .datePickerDayIsValue { the selected day }
  .datePickerDayIsDisabled { a disabled day }
  .datePickerDayIsHighlighted { the currently highlighted day }
  .datePickerDayIsValueAndHighlighted

Re: secure widgets

2011-07-08 Thread Rob Coops
The idea behind security is simple, trust no one and trust nothing... only
when who ever tries to access and authenticates them self and
is authorized to access what ever it is the are attempting to access allow
this action.

So try and hide anything that a user should not have access to. This will
prevent them form attempting to access this and limits the number of errors
or warnings you will have to show.
Always check the credentials on every single call don't assume that due to
the user having access to a button they must have the rights check these
rights instead.
If at all possible do not provide access at all the more access you have to
give the more likely it is this will be abused. If you think you are being
paranoid you need to look for another job you can never be paranoid enough
;-)

In all honesty I think that GWT is not a very good platform for secure
applications for the simple reason that a lot of the hiding of functionality
happens on the wrong system (the client side). Now there is a lot to say
against security trough obscurity but look at it this way if you had never
seen or heard a bout an iPhone or iPad would you want one? Exactly 99% of
the people would say no to that and that means a big reduction in the number
of people that might try and get one...

If you are working on a system that should be as secure as possible I would
advocate against GWT simply because as originally said most of the hiding of
functionality happens on the wrong system which means that attackers gain a
lot of knowledge that would otherwise be just that bit harder to come by. Of
course there is nothing stopping them from gaining this knowledge anyway,
but every hurdle is one more reason to leave your site for what it is and
try to mess with your neighbors site instead.

No matter how many people advocate against the obscurity argument less
information is the reason wars have been lost and in this day and age where
information makes Google... restricting access to information means slightly
more security for your site no matter which way you look at it.


On Fri, Jul 8, 2011 at 9:09 PM, David Chandler drfibona...@google.comwrote:

 Agreed! Don't show the button if the user doesn't have permissions. But
 also check perms on the server to protect against hackers.

 /dmc

 On Fri, Jul 8, 2011 at 2:54 PM, Alberto Sarubbi asaru...@gmail.comwrote:

 we actually protect EVERY call to our server validating the user
 rights before proceeding to the service execution.

 it just doesn't seem right to show a user a button that he can't click
 because he don't have the permission to do.
 it sounds more logical not showing the button at all.
 of course, validations on server side will catch any click on a
 forbidden button, then comes the question: why would i show
 the button then?..


 thanks for the advice people. may be i just don't get right the js gui
 development yet :)

 --
 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.




 --
 David Chandler
 Developer Programs Engineer, GWT+GAE
 w: http://code.google.com/
 b: http://turbomanage.wordpress.com/
 b: http://googlewebtoolkit.blogspot.com/
 t: @googledevtools

  --
 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.


-- 
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: Specifying cache expiration

2011-07-07 Thread Rob Coops
Have a look at the following page:
http://code.google.com/appengine/docs/java/config/appconfig.html#Static_Files_and_Resource_Files

Under the header: Setting the Browser Cache Expiration ;-)

Hope that helps, also there is a bit of chatter on why a GAE would or would
not GZip a file when transferring it this will also help a lot specially for
large text files which are wonderfully small when compressed.

Regards,

Rob

On Thu, Jul 7, 2011 at 11:55 AM, Vik vik@gmail.com wrote:

 Hie

 I used PageSpeed chrome extension to analyze my app home page which is
 hosted on GAE.  The suggestion come to set image cache expiration to 1 week
 at least. Now I do not know where should I do that?

 Please advise.

 Thankx and Regards

 Vik
 Founder
 http://www.sakshum.org
 http://blog.sakshum.org

 --
 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.


-- 
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: GWT 2.4 - close?

2011-07-07 Thread Rob Coops
Exactly one minute later I get the following email :-)

Revision: 10420
Author:   mrruss...@google.com
Date: Thu Jul  7 06:43:13 2011
Log:  tag for the 2.4 rc1 release

http://code.google.com/p/**google-web-toolkit/source/**detail?r=10420http://code.google.com/p/google-web-toolkit/source/detail?r=10420

Added:
 /tags/2.4.0-rc1

I guess we are nearly there :-)

On Thu, Jul 7, 2011 at 3:39 PM, cri chuck.irvine...@gmail.com wrote:

 Sorry, Just can't help myself. Are we anywhere close to the 2.4
 release? Thanks, Chuck

 --
 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.



-- 
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: GWT Widget styling using CSS and UiBinder

2011-07-07 Thread Rob Coops
On Thu, Jul 7, 2011 at 11:09 AM, vik vmgu...@gmail.com wrote:

 Can somebody please post a simple example on how to style a 'fairly-
 complex' widget like the gwt-DatePicker with different colors and
 assets? There are a few examples online for the date picker but they
 either are incomplete or don't use the UiBinder technique. I would
 like to use the UiBinder ui.xml files to store information as in
 colors, bg images etc. Thanks!

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


Hi Vik,

I would suggest using the build in styles
CSS Style Rules

.gwt-DatePicker { }
.datePickerMonthSelector { the month selector widget }
.datePickerMonth { the month in the month selector widget }
.datePickerPreviousButton { the previous month button }
.datePickerNextButton { the next month button }
.datePickerDays { the portion of the picker that shows the days }
.datePickerWeekdayLabel { the label over weekdays }
.datePickerWeekendLabel { the label over weekends }
.datePickerDay { a single day }
.datePickerDayIsToday { today's date }
.datePickerDayIsWeekend { a weekend day }
.datePickerDayIsFiller { a day in another month }
.datePickerDayIsValue { the selected day }
.datePickerDayIsDisabled { a disabled day }
.datePickerDayIsHighlighted { the currently highlighted day }
.datePickerDayIsValueAndHighlighted { the highlighted day if it is also
selected }

Since with UIBinder you can only assign a single style name and as far as I
know this is not automatically used to replace the datePicker part of the
default styles you are pretty much stuck with these once. Though I would not
put it past the Google team to be smart enough to do that I fear that this
might just not work at the moment. To be able to do this and still add you
own style use: addStyleNames.

Regards,

Rob

-- 
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: visibleEvent

2011-07-05 Thread Rob Coops
In that case you could fire a custom event every time you change the
visibility, as far as I know you should be able to figure out if widget X is
visible or not by simply asking it ( component.isVisible ).

The only thing is that you will have to ensure that you fire this custom
event everywhere in your code where you influence the visibility of a
component... To overcome that I would create a custom component and
overwrite the (setVisible method, to automatically trigger the event for
you) of course as mentioned by Jeff you do need to really make sure that you
are not messing it all up with inline styles, css or other methods of
messing about with the visibility of your component.

All in all it is not an easy one and it will mean you have to be 100% sure
that you never ever set visibility in any other way
then problematically which is depending on your project not that hard or
near impossible...

Regards,

Rob

On Tue, Jul 5, 2011 at 7:30 PM, gwtomni gwtomni gwto...@gmail.com wrote:

 thank you for your quick response.

 I have a textBox with a DecoratedPopupPanel on its right like a toolTip.
 Both of them are in a TabLayoutPanel.
 problem is when I am switching between tabs, the toolTip is still visible.

 I want a way to know that the textBox is no longer visible to be able to
 hide the toolTip.

 thank you.

 --
 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.


-- 
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: Help : Memory Leak Problem

2011-07-04 Thread Rob Coops
On Mon, Jul 4, 2011 at 6:00 PM, Alberto Rugnone
arugnonechemi...@gmail.comwrote:

 Hello everybody,
 In my office we are experiencing a very bad problem of memory leak. We
 are developing an application with GWT based on MVP architecture.
 Each widget is a MVP and each MVP is based on a own class named
 DefaultWidgetPresenter.  The applicaion has to create periodically new
 Presenters (subclass of the first) and deletes periodically olders.
 Anyway application memory grows up. Profiling the application with
 developer tools provided by Chrome or Safari we registered that
 Presenter keeps their number increasing slowly and
 DefaultWidgetPresenter still growing up rapidly, and we don't
 understand why? We checked if we deleted correctly the presenter and
 sincerely I can't say yes because our probably no deep understanding
 of GWT technology.
 This is the application procedure in a nutshell
 1) Application create a Presenter dynamically
 2) Then it put its displays in a panel
 3) Then after a certain time it creates a new Presenter
 4) It clears the panel then add the new display.
 ... and so on

 I expected old presenters are garbage collected in some way. In
 addition I don't understand why we have difference between number of
 Presenters instances  and parents classes instance. I took
 measurements also from chrome's task manager but I can't understand
 the relation between profiling and that. In fact when I use profiling
 the memory grows in  a strange way probably because profiling
 instrument the memory in some way.

 There is some one that can help us and explain those behaviours? I am
 wondering also if a key to understand the problem could be understand
 how GWT implements inheritage and garbage collecting? ?

 Thank you in advance for any help, this problem is very important.

 Regards
 Alberto

 --
 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.

 Hi Alberto,

Being an absolute novice in Java development but having spend many years
supporting Java based applications and working with many other programming
languages I would say there is a relatively simple reason for this behavior.

Usually the garbage collector will kill what ever is considered old enough
(there are various stages in the objects life cycle but who cares right
unused objects will die in the end). What you are doing to kill of the
object in your code is not working as you expect it to. As long as there is
a single reference to the object the garbage collector will see this as a
object that's in use and thus will not remove it.

So what I understand form your post you are simply deleting the presenter
from the panel. This works well for static things like a button or an image
but as soon as you are talking a widget that is displaying data the data
that you are displaying will still be updated in that widget as all you did
is remove the widget from the display part of your program the code that is
updating the widget will happily continue to work. I would say you will need
to build a destroy method for your presenter that will remove all links to
the data to be displayed. If you call this after you delete the presenter
you should see the garbage collector clean it up nicely.

Now as I said before I am a complete novice in Java/GWT so I cannot make any
promises about the sanity of my comments but from what I know from other
languages and from supporting Java based systems for many years; the usual
reason a garbage collector misses an object is because the developer forgot
to remove all references to that object. ;-)

Regards,

Rob

-- 
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: Removing ClickHandler from Button?

2011-07-04 Thread Rob Coops
removeClickListner() is deprecated if I am not mistaken...

Anyway the big question is why remove the clickHandler from your button in
the first place a button that can not be clicked is nothing more then a
label with a border...
I would suggest disabling the button or simply have the clickHandler return
instead of doing anything... in both cases for the user nothing will happen
once they click the button.

just my 2 cents.

Regards,

Rob

On Tue, Jul 5, 2011 at 1:05 AM, Milan Cvejic liquidbra...@gmail.com wrote:

 Hi,
 I am trying to find a way how to remove ClickHandler from Button,
 there is no any method related to this. I see that we can remove
 ClickListener with removeClickListener(), but there is no way to
 remove ClickHandler.

 I am using following code:

 Button b = new Button(test);
 b.addClickHandler(new ClickHandler() {
@Override
public void onClick(ClickEvent event) {
Window.alert(test);
   }
 });

 Is there any way to remove ClickHandler?

 Thanks.

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



-- 
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: Is encryption over RCP possible?

2010-12-15 Thread Rob Coops
Fair enough I have to say I have not seen that article before, interesting
though...

Anyway, see why I say use both:

UNSECURE - CERT. EXCHANGE - CERT. VERIF - KEY NEGOTIATION - SECURE
EXCHANGE - JS TRANSFER - CERT. EXCHANGE - CERT. VERIF - KEY
NEGOTIATION - SECURE EXCHANGE - LOGIN FORM

You site will not be much faster because of all this dragging around
certificates but it is much more work to listen in on.

As for your argument that:
a) Fiddling Javascript while it is transferred between server and
client is hard to achieve. If Mallory can do that, he/she may as well
fiddle with certificates, meaning TLS does not offer protection
against this kind of attack.

This is of course true assuming you change your script all the time but
staying realistic once deployed your script will be send to the client over
and over and over again without change. So for someone to sit in the middle
accept the script from your server and forward on a script with a slightly
different content is not hard at all. It is as simple as simply sending over
the different file... of course it takes some doing on the part of the
attacker but clearly what ever it is you are securing is worth the effort.

Still a simple but effective way to protect against burglary is to put
additional locks on the door, even if they are not that hard to break they
are harder to break then your neighbours lock who have only a single lock in
place...

Remaining realistic there is another simple yet effective way to deal with
this and that is to use a token system... again the more security you pile
on the better this does not mean the rest of the solutions is not needed or
useful but using a simple token generator to generate password strings in
combination with a user defined part of the password means that yet again
there is a additional hurdle to take for a would be attacker.

In the end a 100% safe system is not possible a secret will always leak out,
a private certificate is only as save as the machine it is on an if the
machine is connected to the internet it is not safe. There is really no way
you can be 100% sure your secret is safe as there is no way to proof that
who ever is trying to attack you has not found another way to get to your
secret.
The best thing you can go for is as safe as you can make it the more layers
of security the better and the more different devices and media involved the
better... in the end all security will be broken even a 1024 bit key will
not hold given enough time, most likely because someone will find a way to
access the client or server directly.
Look at the Skype algorithm in stead of trying to crack it the law
enforcement agencies all over the world are using trojans to listen in on
the client side. You can simply not grantee safety online it is simply not
possible as there are always attacks that can provide access via routes that
you can simply not control.




On Wed, Dec 15, 2010 at 6:17 PM, UseTheFork jvers...@gmail.com wrote:

 Hi Rob,

 On Dec 15, 9:39 am, Rob Coops rco...@gmail.com wrote:
  Lets sum this up nice and quick...
 
 - SSL/TLS uses certificates and is according to most as save as it
 gets
 - MITM attacks can and do happen, they could theoretically even mess
 with
 SSL/TLS communication
 - SSL/TLS MITM attacks have to the best of my knowledge not been seen
 in
 the real world (yet)

 Ok, then Google 'SSL/TLS MITM attacks'. Those attack do (and did)
 happen, but no bank or official institution will ever admit that.
 Their business would collapse if they admitted this publicly...

 Now if you want a specific example:

 http://www.zdnet.com/blog/security/man-in-the-middle-attacks-demoed-on-4-smartphones/4922

 - Javascript cannot do its own encryption as it simply does not have
 the
 right tools for it

 True, but there are many libraries available which provide
 functionalities facilitating the implementation of encryption.

  Designing a watertight security solution that cannot be broken when
  transporting data over a publicly accessible network is nothing else then
  ignorance or arrogance on the part of the designer, it simply is not
  possible not in the long run at least.

 Yes, it is possible when there is a pre-established secret between
 Alice and Bob. But, that is (most) often not the case on the Internet.
 So, I cannot rely on this.

 (REM: in a private email, someone argued that root certificates stored
 in browsers where pre-established secrets and concluded that TLS/SSL
 was therefore stronger than my approach; such certificates are not,
 they are public, this is no secret)

  So take what you can get and throw as
  much at it as possible SSL/TSL, your own encryption and anything else you
  think might help to make the life of friend Mallory as miserable as
  possible.

 TLS or not, user input should never be trusted and has to be checked
 by the server. If you have a method that checks this, then TLS is
 redundant. It does not offer more protection

Re: Firing native events in GWT?!

2010-08-03 Thread Rob Coops
No idea if it is the right thing to do but you could just call the
onKeyPressed method of the widget in quesion can't you?

On Tue, Aug 3, 2010 at 11:40 AM, Blaze baze...@gmail.com wrote:

 Hi all,

 I have one question...how can we fire a native event in gwt...??
 by native event I think on let me say..keyboard key pressed...etc

 Tnx,

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



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



Re: Firing native events in GWT?!

2010-08-03 Thread Rob Coops
Ah, ok fair enough apperantly (google search helps a lot :) you should be
able to use:

DomEvent.fireEvent(Document.get().createXXXEvent, handlerSource);



On Tue, Aug 3, 2010 at 11:52 AM, Blagoja Chavkoski baze...@gmail.comwrote:

 Hi,
 first tnx for the rpl..

 yes thats ok...also would be ok to fire onNativeEvent in widget
 method...but I have more components(widgets) related to that event..and i
 dont like to keep instance of all of them and fire the event one by
 one...for each...
 In gwt 1.6 there ware metods in Document.firexxxnativeEvent...but after 2.0
 there not inside...and i dont no how can be done...

 On Tue, Aug 3, 2010 at 11:45 AM, Rob Coops rco...@gmail.com wrote:

 No idea if it is the right thing to do but you could just call the
 onKeyPressed method of the widget in quesion can't you?

 On Tue, Aug 3, 2010 at 11:40 AM, Blaze baze...@gmail.com wrote:

 Hi all,

 I have one question...how can we fire a native event in gwt...??
 by native event I think on let me say..keyboard key pressed...etc

 Tnx,

 --
 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.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.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.comgoogle-web-toolkit%2bunsubscr...@googlegroups.com
 .
 For more options, visit this group at
 http://groups.google.com/group/google-web-toolkit?hl=en.


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



Re: How to disable menu items?

2010-08-03 Thread Rob Coops
So what you are saying is that you need a way for the menu to detect which
user/user group is looking at the menu.

As you are already saying you have user groups it should not be to hard to
inform the menu about the user group that is trying to open it. Once the
menu knows which group is trying to open it it can use internal hard
coded or externally read logic to decide what fields to render and how to
render them, what events to attach to the elements and so on.

I would simply hand the menu a variable/object that identifies the user
group accessing it. Then the menu logic can deal with the rest. I would
though use an external location to store the logic for the menu so you can
easily update it should you need to add a new group in the future.

I hope that helps a bit...



On Tue, Aug 3, 2010 at 4:28 PM, Magnus alpineblas...@googlemail.com wrote:

 Thank you,

 but shouldn't GWT itself provide a mechanism to disable menu items?

 Using an additional library is not the problem for me, but using an
 additional library because of such a small functionality that should
 be present in any menu implementation is a problem for me. As a
 consequence I would end up in about a dozent libs...

 Isn't there another solution?

 Why is this missing?

 Thanks
 Magnus

 On Aug 1, 10:56 pm, Alan Hadsell ahads...@gmail.com wrote:
  On Aug 1, 12:25 pm, Magnus alpineblas...@googlemail.com wrote:
 
   Hi,
 
   I have a MenuBar with MenuItems, which I would like to selectively
   enable for defined user groups. But how can I enable/disable menu
   items?
 
  Take a look at gwtlib:http://code.google.com/p/gwtlib/.  It has
  menubars
  and menu items that can be enabled and disabled.

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



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



Re: CSS and panel alignment

2010-08-02 Thread Rob Coops
On Mon, Aug 2, 2010 at 1:34 PM, Leung leung1_2...@yahoo.com wrote:

 Hi,

 In the host html file, I have a div to specify the location to load the
 widget which is a vertical panel. I add 2 horizontal panel to it. I want the
 first one to be left alignment. The second one is right alignment.
 Should I define it from the div tag of the host file? Or should I define it
 on the panel constructor using this.setHorizontalAlignment(align)?

 I have tried to use this.setHorizontalAlignment(align) but the alignment
 not so right. Both panel's components are aligning to the left.

 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.comgoogle-web-toolkit%2bunsubscr...@googlegroups.com
 .
 For more options, visit this group at
 http://groups.google.com/group/google-web-toolkit?hl=en.


Hi,

I would advise using something along the lines of firebug or the Chrome
developer plugin. Most likely you will see that the style you are trying to
set is not being applied correctly. To me it sounds a lot like the problem
is that the things you are adding are tables not div's (vertical and
horizontal panels are mostly tables) so you might be setting the table
alignment to left and right but the cell contents is not following this
alignment.

Using things like docklayoutpannel and layoutpannel will give you div's that
will make your life a lot easier as they will let the children inherit these
settings just like you expect them to do.

Regards,

Rob

-- 
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: A little help

2010-07-28 Thread Rob Coops
Hi Diego,

I think the template you like comes form the book:

GWT in Action
Easy Ajax with the Google Web Toolkit
Robert Hanson and Adam Tacy
ISBN: 1-933988-23-1


At least a large part of the interface seems to work very similar to what is
build as an example app in that book. The book by now is a little dated and
I would advise you to wait for the new edition of the book which should also
include things like the declarative UI and other recent additions to the
toolkit.

Other then that if you are on a course to learn how to write GWT application
should you not practice a little your self :-) Asking other will not help
you much in understanding why you are doing certain parts and why you would
not do things in a slightly different way.

Regards,

Rob

On Tue, Jul 27, 2010 at 11:57 PM, Diego Venuzka dvenu...@gmail.com wrote:

 Hello guys!
 I'm going to do a work for my course, and i will use GWT+Ajax on Eclipse
 Helios. I never used GWT, and i need build a system to control a machine
 shop. My question is, somebody have a template, or guide to use GWT/Ajax on
 Eclipse? I saw a site that use GWT and Ajax:
 http://www.geoleite.com.br/site/index.html (i like so much this template
 :D)
 If anybody can help me, i really thank :D

 Thank all!
 --
 Diego Venuzka

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


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



Re: Server Side Byte Code Obfuscation

2008-12-09 Thread Rob Coops
On Tue, Dec 9, 2008 at 5:17 PM, Allahbaksh [EMAIL PROTECTED] wrote:


 Hi,
 We are distributing an application. We want to obfuscate the server
 side code to the client so that they should not reverse engineer the
 code. Is it works fine?

 What will happend to servlets? Whether they work fine?

 Regards,
 Allahbaksh
 


Hi Allahbaksh,

Obfuscating code is not going to stop any determined person from reverse
engineering your code, it might make it slightly more difficult but that is
about it. The code should still work otherwise the obfuscation failed and
you simply broke your own code.

In the end any and all code you write can be reversed engineered regardless
of obfuscation or any other technique used to make it harder to do so. So in
that respect you will have to look at the cost you make obfuscating your
code as opposed to the risk you run with someone actually taking the trouble
of reverse engineering your code. How much will you loose if someone reverse
engineers your code in a week and how much will you loose if it takes them a
month... you might very well find that the cost of hiding you code is not
worth the money.

Regards,

Rob

--~--~-~--~~~---~--~~
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 SITE? (example)

2008-10-03 Thread Rob Coops
On Fri, Oct 3, 2008 at 10:42 AM, rov.ciso [EMAIL PROTECTED] wrote:


 Good day! Do anybody know sites based on GWT? What is big project
 write with GWT? Please, give me url. Thanks.
 
 Try gpokr.com it is a nice example of a none business application written
in GWT, showing you that a lot more can be done with it then just a fancy
way to present a form.

Regards,

Rob

--~--~-~--~~~---~--~~
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: questions on Login Security FAQ

2008-09-18 Thread Rob Coops
Always fun to read a Reinier comment to pretty much anyone.

Seriously Reinier though you usualy are quite correct with your facts and
knowledge you might try to leave the baseball bat on the filed and not bash
someonce head in for a change. I would not be surprized if people are scared
to post here for they fear the wrath of the ever present Reinier.

On the other hand I am still looking forward to the day when fingers will
automaticaly be broken every time a developer codes a well known and
described security flaw into their application.

On Thu, Sep 18, 2008 at 4:50 PM, Reinier Zwitserloot [EMAIL PROTECTED]wrote:


 JasonG: Thanks for being a nice example of the cluelessness of your
 average programmer. You've got it all, totally, 100% backwards. Don't
 feel too insulted, you're like almost everyone else out there.
 However, you should most definitely stop handing out security advice.
 Seriously.

 A) J2EE doesn't magically work without session keys. It just handles
 them for you; they are still stuck in a cookie someplace. HTTP is
 stateless. A session is by necessity involved.

 B) BCrypt (and you should use BCrypt, or you Fail Security. Seriously.
 Don't think about it, you failed the test. Use tools written by the
 experts) - is a better take on a technique called 'salt hashing',
 invented a few decades ago. With salt hashing, two people with the
 same password do not have the same hash in the database. The fact that
 you don't even know the principle of salt hashing means you're a few
 decades behind the times.

 C) You don't check HASH(username+password), because BCrypting 'abc123'
 and BCrypting 'abc123' again does NOT result in the same hash value!
 That's the whole point. You BCrypt('abc123') exactly once, and then
 later, you get the hash from the db and ask BCrypt to verify that
 'abc123' was used to generate that hash. Even if you somehow solved
 this problem (by removing the salting from the equation which is very
 stupid), then there's still the birthday paradox (wikipedia that) to
 ensure that there are actual serious odds of a collision. In case of a
 collision, some random user will log in as someone else, or if you add
 a unique constraint, some user will someday pick/change his password
 and get a persistent server error. Big whoops.


 On Sep 18, 3:48 pm, JasonG [EMAIL PROTECTED] wrote:
  Hi Cresteb,
 
  I have a couple of things to add to what others have said.
 
  1 - I presume all of the session talk in this thread is in regards to
  non-Java languages for the server-side.  If you are using a J2EE
  application on the back end you don't need to worry so much about
  passing session IDs since the app server will pretty much handle that
  for you once authentication has been established.  In fact, you are
  encouraged not to.
 
  2 - When generating a password hash to store in a DB, regardless of
  what hash algorithm is used I will typically hash the (username
  +password) and place that in the password field.  This offers a couple
  of advantages.  a) you get a single ticket by which a user can be
  looked up if both values are known.  b) if your data gets compromised,
  even the passwords of users who stupidly use the same common password
  (i.e. password, secret, etc...) won't show up the same in the
  database.  To make it even better you can add another element to the
  mix (secret+username+password) so that the same username+password in
  different applications shows up differently in the database.
 
  On Aug 19, 10:11 pm, cresteb [EMAIL PROTECTED] wrote:
 
   Hello!
 
   I have some basic questions on the Register + Login + Keep session
   alive process described on the Login Security FAQ.
 
   I know this is a little bit offtopic, but it would be really helpful
   for me and other newbies if anyone can clarify some issues.
 
   This is how I see the process with some questions attached, please
   correct it where necessary!
 
   Register:
 
   1) Send username and password from client to server.
   Q: I guess all the sites make this step over https so anyone can sniff
   the password, right?
 
   2) Store in the DB the username and the hash of the password.
 
   Login:
 
   1) Send username and password from client to server (again over SSL).
 
   2) Calculate the pasword's hash and look for a register in the DB that
   contains that username and hash combination.
 
   3) Return a session ID from server to client.
   Q: Is this also done through https? If not, can't it be this session
   id intercepted and used later to make a query as if you were other
   user?
 
   During the session:
 
   1) For every request from the client, include the session id, so the
   server knows which user is sending the request and it is able to check
   if the session is still active.
   Q: Is secure enough just sending the session ID in order to identify
   the user?
   Q: The same as above...should it be sent through https?
 
   2) Check if the session ID is valid or not. If its valid,