[appengine-java] Re: App Engine and Spring slow start up

2010-04-25 Thread tazdevil78
I am still new to GAE, but could we not push an instance of
DispatcherServlet into MemCache or the datastore?

Then when the application idles we can pull the instance back out of
storage instead of creating a new instance.

Is that not what Google is trying to say in their FAQ, Share
expensive initialization between JVMs. For example, put data which is
expensive to read or compute into memcache, where it can be quickly
read by other JVMs during startup.

Maybe I am missing something obvious



On Feb 26, 2:50 pm, luijar luis.j.aten...@gmail.com wrote:
 Nope, I am still seeing it. It's quite frustrating. I even tried to
 reduceSpringinit time by removing schema validation from the
 application context init. But, that does not seem to work. I am 
 usingSpringannotations and component scanning to autowire my beans, I
 wonder if using plain XML configuration will make autowiring faster.

 On Feb 23, 9:14 pm, charming30 charmin...@gmail.com wrote:

  Has the above mentioned offline precompilatio in 1.3.1 been able to
  solve your issue, I plan to useSpringon Java for my Business App
  which is complex and could be based on SOA. Kindly let me know if your
  issue was resolved or reduced by using the above fix.

  On Feb 20, 12:05 am, luijar luis.j.aten...@gmail.com wrote:

   I believe my development environment was on 1.3.0. That might be
   something to look at, although it seems that probably it's a very
   small overhead, do you have any metrics that would give some evidence
   as to how much overhead is offline precompilation adding?

   Thanks

   On Feb 18, 2:04 pm, Don Schwarz schwa...@google.com wrote:

Have you deployed your application with the 1.3.1 SDK?  That release 
turned
on offline precompilation by default, which is an optimization that 
may
help.

On Thu, Feb 18, 2010 at 7:59 AM, Alex chasov...@gmail.com wrote:
 Hi,

 It appeared that long init problem is well known for Grails users:
http://jira.codehaus.org/browse/GRAILSPLUGINS-1736

 I wasted couple of weeks to create app I cannot run. Hope that
 SpringSource and Google can solve the issue.

 On Feb 17, 7:41 pm, Stephan Hartmann hartm...@metamesh.de wrote:
  The problem is that the initialization of your app takes longer 
  than 30
  seconds.
  Pinging your app doesn't help when the app is restarted due to
 redeployment
  or maintenance, or when high traffic demands a second instance.

  You should try to reduce your startup time.

  regards,
  Stephan

  2010/2/17 luijar luis.j.aten...@gmail.com

   Great, all of our projects areSpringenabled lol. But I guess it's
   good that we are not the only ones seeing this, hopefully it gets 
   a
   little more visibility. We have a cron job (1 min) that tries to 
   keep
   our application alive by hitting a URL, but it does not do a very 
   good
   job. It's frustrating and we don't even have access to the 500 
   page to
   tell the user to retry or go somewhere else.

   On Feb 17, 11:21 am, oth other...@gmail.com wrote:
Yes we have seen this problem a lot. Per our tests, an 
application
becomes idle after a minute of non activity. So, the unfortunate
reality is that you need to keep your app alive by simulating
 activity
on it. Or go the nonSpringroute.

Thanks

On Feb 16, 4:14 pm, luijar luis.j.aten...@gmail.com wrote:

 Hello Google App Engine forum,

   We have been seeing ever since we deployed our applications
 (currently 3 of them) that when our application instances 
 become
 idle
 (they have not been hit for x amount of seconds) subsequent
 requests
 return with a 500 response. Logs show a hard deadline exceeded
 error

 com.google.apphosting.runtime.HardDeadlineExceededError: This
 request
 (32306ebe63b71ab0) started at 2010/02/12 20:39:11.984 UTC and 
 was
 still executing at 2010/02/12 20:39:41.225 UTC.
         at

 com.google.appengine.runtime.Request.process-32306ebe63b71ab0(Request.java)

 And the first line of the log message has the following :

 02-12 12:39PM 14.088

 javax.servlet.ServletContext log: InitializingSpringroot
 WebApplicationContext

 Question:
 Has anyone else seen this behavior? How long does it take for 
 an
 application instance to become idle?

 Thanks

   --
   You received this message because you are subscribed to the Google
 Groups
   Google App Engine forJava group.
   To post to this group, send email to
   google-appengine-j...@googlegroups.com.
   To unsubscribe from this group, send email to
   google-appengine-java+unsubscr...@googlegroups.comgoogle-appengine-java%2B
unsubscr...@googlegroups.com
 

[appengine-java] Re: Can't decide: JDO, Twig-Persist or Objectify?

2010-04-25 Thread David Sowerby
hi  jbdhl

I wish there was an easy answer too - but I suppose at least we have
choice!

My experience, which I hope will at least help you a bit 

For back ground  I am transferring a prototype developed using a
db4o back end, but had little done for the UI.  There are a lot of
relationships in the domain layer, and the design was very much OO not
RDBMS

I started by using JDO thinking it would give me portability.  I got
it to work, but seemed to end up with some messy code.  To be fair,
that in part was due to my lack of real understanding of GAE, but I
didn't really feel I had achieved portability either - there would
still have been changes to make to move elsewhere

I therefore abandoned the idea of portability, accepting that I would
probably have to re-write the Dao layer anyway, if ever I want to
move.  I decided that it would be better to spend more time on getting
that Dao layer isolated and independent - that would give me
reasonable portability without compromising the different strengths of
different persistent platforms.

I tried Twig - it seemed a good solution, and was certainly easy to
set up and use.  I found the documentation is bit sparse on property
translators, but otherwise I had no real problems.  The amount which
Twig takes away from you is one of those classic blessing/curse
situations - it is a blessing not to have to think about some of the
detail, but you lose control.  I felt that once I had understood GAE,
I may be losing some of benefits by not having enough direct control -
for this application.  I would certainly consider Twig again for other
applications.

So I have now migrated to Objectify, which seems fairly
straightforward, and I have the level of control I was looking for -
with a particular eye on performance since I do not yet have any idea
how my application will perform

I'm afraid the Twig-Objectify discussions occasionally get a bit like
a religious argument, which is a shame because they have both done a
great job, but with different approaches - and why not?  They serve
different needs.

You have probably read this already but I found this tremendously
useful to understand GAE, which in turn helped me understand the
choices I was trying to make (the Objectify reference isn't a plug -
it is just a very well written article)

http://code.google.com/p/objectify-appengine/wiki/Concepts

Good luck - it would be interesting to know what you decide in the
end ...


On Apr 25, 5:42 am, bufferings bufferi...@gmail.com wrote:
 Hi

 I like Slim3.http://sites.google.com/site/slim3appengine/

 --
 You received this message because you are subscribed to the Google Groups 
 Google App Engine for Java group.
 To post to this group, send email to google-appengine-j...@googlegroups.com.
 To unsubscribe from this group, send email to 
 google-appengine-java+unsubscr...@googlegroups.com.
 For more options, visit this group 
 athttp://groups.google.com/group/google-appengine-java?hl=en.

-- 
You received this message because you are subscribed to the Google Groups 
Google App Engine for Java group.
To post to this group, send email to google-appengine-j...@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine-java+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine-java?hl=en.



[appengine-java] Guice filter

2010-04-25 Thread Timofey Koolin
On local machine I use guice for servlet-injection and map url to
servlets:
serve(/api).with(RemoteAPIImpl.class);
serve(/shoplist/api).with(RemoteAPIImpl.class);
and it work.

On appengine servers it serve don't work and I have 404 error.

-- 
You received this message because you are subscribed to the Google Groups 
Google App Engine for Java group.
To post to this group, send email to google-appengine-j...@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine-java+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine-java?hl=en.



Re: [appengine-java] Guice filter

2010-04-25 Thread seleronm
Hi,

On local machine I use guice for servlet-injection and map url to
servlets:
   serve(/api).with(RemoteAPIImpl.class);
   serve(/shoplist/api).with(RemoteAPIImpl.class);
and it work.

On appengine servers it serve don't work and I have 404 error.


What is the version of SDK that you are using?

Though I am not trying in detail
It is likely to be corrected with SDK 1.3.3.1.

http://code.google.com/p/googleappengine/downloads/list

Please try.
thanks.

-- 
You received this message because you are subscribed to the Google Groups 
Google App Engine for Java group.
To post to this group, send email to google-appengine-j...@googlegroups.com.
To unsubscribe from this group, send email to google-appengine-java+
unsubscr...@googlegroups.com.
For more options, visit this group at http://groups.google.com/group/google-
appengine-java?hl=en.

-- 
You received this message because you are subscribed to the Google Groups 
Google App Engine for Java group.
To post to this group, send email to google-appengine-j...@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine-java+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine-java?hl=en.



Re: [appengine-java] Re: Can't decide: JDO, Twig-Persist or Objectify?

2010-04-25 Thread Christian Goudreau
I have one question in mind after reading what you wrote, in wich way you
have better control in Objectify than Twig ? I'm interested since I moved
from Objectify to Twig and didn't end up in that situation, yet.

For the cons of only one Developper, he may be alone, but he answer every
single one question asked in his mailing list, though righ now he's in only
for two weeks. And he works really fast, bug fix are often done in less than
two days.

Christian


On Sun, Apr 25, 2010 at 5:11 AM, David Sowerby david.sowe...@virgin.netwrote:

 hi  jbdhl

 I wish there was an easy answer too - but I suppose at least we have
 choice!

 My experience, which I hope will at least help you a bit 

 For back ground  I am transferring a prototype developed using a
 db4o back end, but had little done for the UI.  There are a lot of
 relationships in the domain layer, and the design was very much OO not
 RDBMS

 I started by using JDO thinking it would give me portability.  I got
 it to work, but seemed to end up with some messy code.  To be fair,
 that in part was due to my lack of real understanding of GAE, but I
 didn't really feel I had achieved portability either - there would
 still have been changes to make to move elsewhere

 I therefore abandoned the idea of portability, accepting that I would
 probably have to re-write the Dao layer anyway, if ever I want to
 move.  I decided that it would be better to spend more time on getting
 that Dao layer isolated and independent - that would give me
 reasonable portability without compromising the different strengths of
 different persistent platforms.

 I tried Twig - it seemed a good solution, and was certainly easy to
 set up and use.  I found the documentation is bit sparse on property
 translators, but otherwise I had no real problems.  The amount which
 Twig takes away from you is one of those classic blessing/curse
 situations - it is a blessing not to have to think about some of the
 detail, but you lose control.  I felt that once I had understood GAE,
 I may be losing some of benefits by not having enough direct control -
 for this application.  I would certainly consider Twig again for other
 applications.

 So I have now migrated to Objectify, which seems fairly
 straightforward, and I have the level of control I was looking for -
 with a particular eye on performance since I do not yet have any idea
 how my application will perform

 I'm afraid the Twig-Objectify discussions occasionally get a bit like
 a religious argument, which is a shame because they have both done a
 great job, but with different approaches - and why not?  They serve
 different needs.

 You have probably read this already but I found this tremendously
 useful to understand GAE, which in turn helped me understand the
 choices I was trying to make (the Objectify reference isn't a plug -
 it is just a very well written article)

 http://code.google.com/p/objectify-appengine/wiki/Concepts

 Good luck - it would be interesting to know what you decide in the
 end ...


 On Apr 25, 5:42 am, bufferings bufferi...@gmail.com wrote:
  Hi
 
  I like Slim3.http://sites.google.com/site/slim3appengine/
 
  --
  You received this message because you are subscribed to the Google Groups
 Google App Engine for Java group.
  To post to this group, send email to
 google-appengine-j...@googlegroups.com.
  To unsubscribe from this group, send email to
 google-appengine-java+unsubscr...@googlegroups.comgoogle-appengine-java%2bunsubscr...@googlegroups.com
 .
  For more options, visit this group athttp://
 groups.google.com/group/google-appengine-java?hl=en.

 --
 You received this message because you are subscribed to the Google Groups
 Google App Engine for Java group.
 To post to this group, send email to
 google-appengine-j...@googlegroups.com.
 To unsubscribe from this group, send email to
 google-appengine-java+unsubscr...@googlegroups.comgoogle-appengine-java%2bunsubscr...@googlegroups.com
 .
 For more options, visit this group at
 http://groups.google.com/group/google-appengine-java?hl=en.



-- 
You received this message because you are subscribed to the Google Groups 
Google App Engine for Java group.
To post to this group, send email to google-appengine-j...@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine-java+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine-java?hl=en.



[appengine-java] Javascript source files loaded on GAE have escape '\' escaped '\\'

2010-04-25 Thread Thatcher
This is new behavior I haven't seen before and have serveral apps
running with javascript on gae that dont display this symptom.  The
symptom only occurs only on new deployment, not locally.  A brief
summary is in this thread.

http://groups.google.com/group/google-appengine-java/browse_thread/thread/d404ca7955a2bb5f

Basically any file I'm loading via a file system or network io read
seems to have the backslash character in strings again escaped.  so a
\nb becomes a\\nb which meas that rendering string to the response
body results in

a\nb

instead of

a
b

More importantly it causes RegExp constructor to fail tests because
escaped characters are double escaped, eg
RegExp(\\w+) becomes RegExp(w+).

Finally the simpliest test comes from loading a very small file into
rhino (this is js.jar not built-in rhino for java 1.6).
Here is the file:

print('what is the length of two back slash: '+'\\'.length);

Locally, the dev server, does as expected and I get a message:
what is the length of two back slash: 1

on GAE I get firm evidence that the string has been modified:
what is the length of two back slash: 2

Can anyone think what I might have done to trigger this behavior
myself?  Is there some sort of security mechanism at work here to
prevent string injection?  Is it possible that its a GZIP issue on
GAE?  Any help would be greatly appreciated as my apps will no longer
deploy but the existing versions are working correctly.

Thanks
Thatcher

-- 
You received this message because you are subscribed to the Google Groups 
Google App Engine for Java group.
To post to this group, send email to google-appengine-j...@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine-java+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine-java?hl=en.



[appengine-java] Re: Update to GAE/J 1.3.2 - Project in Eclipse broken

2010-04-25 Thread spartan.the
Problem is due to libraries required when project is run are in war/
WEB-INF/lib and libraries used during build are from java library path
(project settings). And there are no easy ways to sync unless you are
Eclipse guru and can manage to write Ant script to update web
libraries using project variables.

For EAR projects J2EE Module Dependencies can solve jar sync problem
(http://www.eclipse.org/webtools/releases/1.5/newandnoteworthy/
j2ee.html) but Google Web Application project is not EAR project.
Again Eclipse gurus can do some magic here editing .project file by
hand.

Simple problem resoluton for mortals follows.


1. Change errors to warnings

Window/Preferences from menu
Google
Errors/Warnings
Expand Project structure and SDKs
SDK JAR missing from WEB-INF/lib : select Warning in combo


2. Delete old jars from war/WEB-INF/lib.

Delete these jars from war/WEB-INF/lib (except gwt-servlet.jar):
appengine-api-1.0-sdk-1.2.1.jar
datanucleus-appengine-1.0.1.final.jar
datanucleus-core-1.1.0.jar
datanucleus-jpa-1.1.0.jar
geronimo-jpa_3.0_spec-1.1.1.jar
geronimo-jta_1.1_spec-1.1.1.jar
jdo2-api-2.3-SNAPSHOT.jar

You still will be able to compile project but not run it because jetty
web server will look for libraries in WEB-INF/lib.

3. Copy missing jars of required versions to WEB-INF/lib.

Simpliest way is to copy all files from:
(eclipse)\plugins\com.google.appengine.eclipse.sdkbundle.
1.3.2_1.3.2.v201003241245\appengine-java-sdk-1.3.2\demos\guestbook\war
\WEB-INF\lib

(eclipse) is location where your eclipse is installed. Macs and
Linuxes should replace \ to / in file path


4. Refresh folder in Eclipse

In Eclipse, select war/WEB-INF/lib, Refresh to refresh folder
contents.


5. Now fix your Eclipse settings to avoid running into the same
problems again.

Window/Preferences from menu
Google
App Engine
Check latest SDK version
Google
Web Toolkit
Check latest GWT version


PS. And now Google suggests to upgrade to release 1.3.3 :)

-- 
You received this message because you are subscribed to the Google Groups 
Google App Engine for Java group.
To post to this group, send email to google-appengine-j...@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine-java+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine-java?hl=en.



[appengine-java] Classloader that uses datastore as backend?

2010-04-25 Thread Patrick Cornelißen
Hi!

I have just subscribed to this list, so please be gentle. ;-)

I am trying to build a portal server like app engine application
(inspired by JSR168/286) as an open source project.

In the last few weeks, I was playing around a lot with different
aspects like request dispatching to allow modular output generation in
the modules and a few other areas related to the task...

These modules should be as protected from one another as possible and
it would be very neat if you could reload/update modules without
redeploying the portal.

While I was reading the documentation about JCL, I got the idea that
it may be possible to load classes/resources/jar-files from the
datastore and provide a simple classloader interface to be as
compatible with other libraries as possible.

Do you think that this would work? I don't want to run 2 weeks in the
wrong direction and I was hoping that someone here has some insight.

Another advantage that I see is that this would circumvent the 10MB
limit for the deployed war file, which may become a problem when
you're trying to build a big/complicated portal with lots of modules.

BTW: If someone is interested to participate, feel free to contact me.
The project is still in a very early stage, so you have the chance to
influence the project in more or less all areas.

Thanks in advance!

-- 
Bye,
  Patrick Cornelissen
  http://www.openprojectguide.org
  http://www.pcornelissen.de http://code.google.com/p/gloudy/

-- 
You received this message because you are subscribed to the Google Groups 
Google App Engine for Java group.
To post to this group, send email to google-appengine-j...@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine-java+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine-java?hl=en.



[appengine-java] Discussion on will-it-play-in-app-engine

2010-04-25 Thread linhares
JDOM 1.1 seems to be compatible if you put xerces.jar together with
the jdom.jar.

-- 
You received this message because you are subscribed to the Google Groups 
Google App Engine for Java group.
To post to this group, send email to google-appengine-j...@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine-java+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine-java?hl=en.



[appengine-java] Re: ApiProxyLocalImpl class not public

2010-04-25 Thread mvsoares
Indeed, ApiProxyLocalImpl is not public anymore in newer versions of
google app engine.

Find below one solution to the problem:

import java.io.File;
import java.util.Properties;

import javax.jdo.JDOHelper;
import javax.jdo.PersistenceManager;
import javax.jdo.PersistenceManagerFactory;

import junit.framework.TestCase;

import com.google.appengine.api.datastore.dev.LocalDatastoreService;
import com.google.appengine.tools.development.ApiProxyLocal;
import com.google.appengine.tools.development.ApiProxyLocalFactory;
import com.google.appengine.tools.development.LocalServerEnvironment;
import
com.google.appengine.tools.development.testing.LocalServiceTestHelper;
import
com.google.appengine.tools.development.testing.LocalTaskQueueTestConfig;
import com.google.apphosting.api.ApiProxy;

public class BaseTest extends TestCase {

private final LocalServiceTestHelper helper =
new LocalServiceTestHelper(new LocalTaskQueueTestConfig());

protected PersistenceManagerFactory pmf;
protected PersistenceManager pm;

@Override
public void tearDown() {
helper.tearDown();
}

@Override
public void setUp() throws Exception {
super.setUp();
helper.setUp();
Properties newProperties = new Properties();
newProperties.put(javax.jdo.PersistenceManagerFactoryClass,
org.datanucleus.store.appengine.jdo.
+ 
DatastoreJDOPersistenceManagerFactory);
newProperties.put(javax.jdo.option.ConnectionURL, 
appengine);
newProperties.put(javax.jdo.option.NontransactionalRead, 
true);
newProperties.put(javax.jdo.option.NontransactionalWrite, 
true);
newProperties.put(javax.jdo.option.RetainValues, true);

newProperties.put(datanucleus.appengine.autoCreateDatastoreTxns,
true);

newProperties.put(datanucleus.appengine.autoCreateDatastoreTxns,
true);
pmf = JDOHelper.getPersistenceManagerFactory(newProperties);
pm = pmf.getPersistenceManager();
ApiProxyLocalFactory factory = new ApiProxyLocalFactory();
ApiProxyLocal proxy = factory.create(new 
LocalServerEnvironment() {
public void waitForServerToStart()
throws 
InterruptedException {
}
public int getPort() {
return 0;
}
public File getAppDir() {
return new File(.);
}
public String getAddress() {
return null;
}
});
proxy.setProperty(
//  LocalDatastoreService.BACKING_STORE_PROPERTY,
LocalDatastoreService.NO_STORAGE_PROPERTY,
Boolean.TRUE.toString());
ApiProxy.setDelegate(proxy);
}

}

-- 
You received this message because you are subscribed to the Google Groups 
Google App Engine for Java group.
To post to this group, send email to google-appengine-j...@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine-java+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine-java?hl=en.



[appengine-java] does gae4java 1.3.3 not suppote flag --use_sqlite.

2010-04-25 Thread zimmem
I got error
---

Usage: dev-appserver [options] war directory

Options:
 --help, -h Show this help message and exit.
 --server=SERVERThe server to use to determine the latest
  -s SERVER   SDK version.
 --address=ADDRESS  The address of the interface on the local
machine
  -a ADDRESS  to bind to (or 0.0.0.0 for all
interfaces).
 --port=PORTThe port number to bind to on the local
machine.
  -p PORT
 --sdk_root=rootOverrides where the SDK is located.
 --disable_update_check Disable the check for newer SDK versions.
-

when add --use_sqlite=true to arguments;

-- 
You received this message because you are subscribed to the Google Groups 
Google App Engine for Java group.
To post to this group, send email to google-appengine-j...@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine-java+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine-java?hl=en.



[appengine-java] Facing problem with using EL and jsp:include tag

2010-04-25 Thread devashish
Following code snippet is not working for me after uploading, whereas
its working in my local server. I have added %@ page
isELIgnored=false % as well on top of the jsp page.

  %
   pageContext.setAttribute(page, home.jsp);
%
jsp:include page = /page/${page} /

Does anyone know how to fix it.

-- 
You received this message because you are subscribed to the Google Groups 
Google App Engine for Java group.
To post to this group, send email to google-appengine-j...@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine-java+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine-java?hl=en.



Re: [appengine-java] does gae4java 1.3.3 not suppote flag --use_sqlite.

2010-04-25 Thread m seleron
Hi,

I think the offer only to SDK of the python edition of [--use_sqlite].

thanks.


 I got error
 ---

 Usage: dev-appserver [options] war directory

 Options:
  --help, -h                 Show this help message and exit.
  --server=SERVER            The server to use to determine the latest
  -s SERVER                   SDK version.
  --address=ADDRESS          The address of the interface on the local
 machine
  -a ADDRESS                  to bind to (or 0.0.0.0 for all
 interfaces).
  --port=PORT                The port number to bind to on the local
 machine.
  -p PORT
  --sdk_root=root            Overrides where the SDK is located.
  --disable_update_check     Disable the check for newer SDK versions.
 -

 when add --use_sqlite=true to arguments;

 --
 You received this message because you are subscribed to the Google Groups 
 Google App Engine for Java group.
 To post to this group, send email to google-appengine-j...@googlegroups.com.
 To unsubscribe from this group, send email to 
 google-appengine-java+unsubscr...@googlegroups.com.
 For more options, visit this group at 
 http://groups.google.com/group/google-appengine-java?hl=en.



-- 
You received this message because you are subscribed to the Google Groups 
Google App Engine for Java group.
To post to this group, send email to google-appengine-j...@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine-java+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine-java?hl=en.



[appengine-java] Re: Utility for checking compatibility of existing java app

2010-04-25 Thread Didier Durand
HI Bruce,

I don't know an off-the-shelf tool to solve your question but you can
combine existing parts to get what you need:

- a dependency analyzer like http://www.dependency-analyzer.org/
- the JRE while list of allowed classes for GAE java at
http://code.google.com/appengine/docs/java/jrewhitelist.html

Then, I would run the dependency analyzer on the application you want
to port and check if all dependencies are in the white list or not .

regards
didier

On Apr 23, 7:07 am, bruce kr krbruc...@googlemail.com wrote:
 Hi,
             Is there any utility available for finding
 incompatibilities in an existing java app with respect to GAE?
 . Where I am coming from is that  there are may APIs/Specifications
 not supported by App Engine  like JMS/JNDI/JDBC/EJB etc as of now.
 Before I could port an existing application to App Engine I need to
 find out whether this application uses any of those incompatible APIs
 or not. I was wondering whether any utility is already available which
 will help me to spot the incompatibilities, say java files containing
 those incompatible APIs.

 --
 You received this message because you are subscribed to the Google Groups 
 Google App Engine for Java group.
 To post to this group, send email to google-appengine-j...@googlegroups.com.
 To unsubscribe from this group, send email to 
 google-appengine-java+unsubscr...@googlegroups.com.
 For more options, visit this group 
 athttp://groups.google.com/group/google-appengine-java?hl=en.

-- 
You received this message because you are subscribed to the Google Groups 
Google App Engine for Java group.
To post to this group, send email to google-appengine-j...@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine-java+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine-java?hl=en.



[appengine-java] Request was aborted after waiting too long to attempt to service your request: Request queued for less than 30 seconds

2010-04-25 Thread Wong
I get Request was aborted after waiting too long to attempt to
service your request. This may happen sporadically when the App Engine
serving cluster is under unexpectedly high or uneven load. If you see
this message frequently, please contact the App Engine team. when
there is another request coming in meanwhile my application is being
initialized after it is spin-down.

My application takes around 26 seconds to start-up. During this 26
seconds, if there is another request, the request will hit the
Request was aborted after waiting too long to attempt to service your
request error in 2-10 seconds (before the 30s limit). If the system
can queue the request for 30s (the hard limit), I believe the request
can still be served.

The first request which triggers the application start-up was finally
served without any problem. However, the second request hits 500 error
before the first request being served. This can be observed in the
log.

04-25 07:13PM 53.849 /post/0 200 27069ms 38750cpu_ms 444api_cpu_ms 9kb
Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.9.1.9) Gecko/
20100315 Firefox/3.5.9,gzip(gfe)
  See details


I 04-25 07:13PM 57.570

  javax.servlet.ServletContext log: Initializing Spring root
WebApplicationContext

...
  W 04-25 07:14PM 20.916

  This request caused a new process to be started for your
application, and thus caused your application code to be loaded for
the first time. This request may thus take longer and use more CPU
than a typical request for your application.



 04-25 07:14PM 09.687 /person/location 500 10022ms 0cpu_ms 0kb Mozilla/
5.0 (Windows; U; Windows NT 6.0; en-US; rv:1.9.1.9) Gecko/20100315
Firefox/3.5.9,gzip(gfe)
  See details

  W 04-25 07:14PM 19.709

  Request was aborted after waiting too long to attempt to service
your request. This may happen sporadically when the App Engine serving
cluster is under unexpectedly high or uneven load. If you see this
message frequently, please contact the App Engine team.


In this case, could the background servers solve the problem? How
can I hand off the request which is coming in when the application is
in the midst of starting up to the background worker?

-- 
You received this message because you are subscribed to the Google Groups 
Google App Engine for Java group.
To post to this group, send email to google-appengine-j...@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine-java+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine-java?hl=en.



[appengine-java] Is appstats work on appengine servers?

2010-04-25 Thread Timofey Koolin
I install appstat for my application and i see stats for my
development server, but i don't see stat for my application in
appengine.

-- 
You received this message because you are subscribed to the Google Groups 
Google App Engine for Java group.
To post to this group, send email to google-appengine-j...@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine-java+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine-java?hl=en.



[appengine-java] Re: Guice filter

2010-04-25 Thread Timofey Koolin
I use 1.3.3.1

On 25 апр, 14:40, seleronm seler...@gmail.com wrote:
 Hi,

 On local machine I use guice for servlet-injection and map url to
 servlets:
             serve(/api).with(RemoteAPIImpl.class);
             serve(/shoplist/api).with(RemoteAPIImpl.class);
 and it work.

 On appengine servers it serve don't work and I have 404 error.

 What is the version of SDK that you are using?

 Though I am not trying in detail
 It is likely to be corrected with SDK 1.3.3.1.

 http://code.google.com/p/googleappengine/downloads/list

 Please try.
 thanks.

 --
 You received this message because you are subscribed to the Google Groups
 Google App Engine for Java group.
 To post to this group, send email to google-appengine-j...@googlegroups.com.
 To unsubscribe from this group, send email to google-appengine-java+
 unsubscr...@googlegroups.com.
 For more options, visit this group athttp://groups.google.com/group/google-
 appengine-java?hl=en.

 --
 You received this message because you are subscribed to the Google Groups 
 Google App Engine for Java group.
 To post to this group, send email to google-appengine-j...@googlegroups.com.
 To unsubscribe from this group, send email to 
 google-appengine-java+unsubscr...@googlegroups.com.
 For more options, visit this group 
 athttp://groups.google.com/group/google-appengine-java?hl=en.

-- 
You received this message because you are subscribed to the Google Groups 
Google App Engine for Java group.
To post to this group, send email to google-appengine-j...@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine-java+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine-java?hl=en.



[appengine-java] Re: TaskOptions.countdownMillis not used

2010-04-25 Thread Fabrizio
Hello Max,

I noticed it because I got wrong data. So I checked the logs.
But, now, I'm trying to reprocude the issue but I cannot. The delay is
good.
I'll continue the test and I'll let you know.

Thank you for your help.


   fabrizio




On Apr 23, 10:40 pm, Max Ross (Google) maxr+appeng...@google.com
wrote:
  The difference between 2 seconds and immediate isn't much.  How are you
 measuring?  Do you have logs that show the time at which the task was
 enqueued and the time at which it executes?

 Thanks,
 Max



-- 
You received this message because you are subscribed to the Google Groups 
Google App Engine for Java group.
To post to this group, send email to google-appengine-j...@googlegroups.com.
To unsubscribe from this group, send email to 
google-appengine-java+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/google-appengine-java?hl=en.