[appengine-java] Re: Paypal integration with app engine?

2010-05-04 Thread Vaclav Bartacek
The only way I found and successfully use is the PayPal Button (saved
on the server + 'custom' attribute) + IPN mechanism (over SSL) to
receive transaction statuses. Other ways could not be probably
implemented now due to the current GAE restrictions - mainly: you
cannot add a new JCE provider now.

Vaclav


On May 3, 7:47 am, shamel shame...@gmail.com wrote:
 How  to integrate paypal with app engine??
    i have got many errors when integrating this. main exceptions are
 org.xml.sax.SAXNotSupportedException:http://xml.org/sax/features/external-general-entities
         at
 org.apache.xerces.framework.XMLParser.setExternalGeneralEntities(XMLParser.java:
 486)
         at org.apache.xerces.framework.XMLParser.setFeature(XMLParser.java:
 1298)
         at org.apache.xerces.parsers.SAXParser.setFeature(SAXParser.java:578)
         at
 org.apache.xerces.jaxp.SAXParserImpl.setFeatures(SAXParserImpl.java:
 150)
 ...

 please help me as fast as possible???

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



Re: [appengine-java] Re: Paypal integration with app engine?

2010-05-04 Thread Aditya Rathi
You can integrate paypal with GAE using thrid part cart feature. I have used
it

On Tue, May 4, 2010 at 11:33 AM, Vaclav Bartacek 
vaclav.barta...@spolecne.cz wrote:

 The only way I found and successfully use is the PayPal Button (saved
 on the server + 'custom' attribute) + IPN mechanism (over SSL) to
 receive transaction statuses. Other ways could not be probably
 implemented now due to the current GAE restrictions - mainly: you
 cannot add a new JCE provider now.

 Vaclav


 On May 3, 7:47 am, shamel shame...@gmail.com wrote:
  How  to integrate paypal with app engine??
 i have got many errors when integrating this. main exceptions are
  org.xml.sax.SAXNotSupportedException:
 http://xml.org/sax/features/external-general-entities
  at
 
 org.apache.xerces.framework.XMLParser.setExternalGeneralEntities(XMLParser.java:
  486)
  at
 org.apache.xerces.framework.XMLParser.setFeature(XMLParser.java:
  1298)
  at
 org.apache.xerces.parsers.SAXParser.setFeature(SAXParser.java:578)
  at
  org.apache.xerces.jaxp.SAXParserImpl.setFeatures(SAXParserImpl.java:
  150)
  ...
 
  please help me as fast as possible???
 
  --
  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.



Re: [appengine-java] struts2 result 'null' not found google app engine

2010-05-04 Thread Sreekanth Raju
result is mapped to what... jsp, action ... ?

-- 
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] 500 Internal Server Error

2010-05-04 Thread 付平 戚
Closing update: new version is ready to start serving.
Uploading index definitions.
Uploading cron jobs.
java.io.IOException: Error posting to URL:
https://appengine.google.com/api/datastore/cron/update?app_id=seven3xxversion=1;
500 Internal Server Error

Unable to update:
java.io.IOException: Error posting to URL:
https://appengine.google.com/api/datastore/cron/update?app_id=seven3xxversion=1;
500 Internal Server Error

Server Error (500)
A server error has occurred.

at
com.google.appengine.tools.admin.ServerConnection.send(ServerConnection.java:
149)
at
com.google.appengine.tools.admin.ServerConnection.post(ServerConnection.java:
82)
at
com.google.appengine.tools.admin.AppVersionUpload.send(AppVersionUpload.java:
559)
at
com.google.appengine.tools.admin.AppVersionUpload.updateCron(AppVersionUpload.java:
260)
at
com.google.appengine.tools.admin.AppVersionUpload.doUpload(AppVersionUpload.java:
133)
at
com.google.appengine.tools.admin.AppAdminImpl.update(AppAdminImpl.java:
56)
at
com.google.appengine.eclipse.core.proxy.AppEngineBridgeImpl.deploy(AppEngineBridgeImpl.java:
271)
at
com.google.appengine.eclipse.core.deploy.DeployProjectJob.runInWorkspace(DeployProjectJob.java:
145)
at
org.eclipse.core.internal.resources.InternalWorkspaceJob.run(InternalWorkspaceJob.java:
38)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)

-- 
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] Servlet request parameters empty

2010-05-04 Thread Rob
I'm running Google App Engine through IntelliJ Idea and am posting
data to a Servlet using jQuery.ajax. I'm hitting the Servlet without
issue and can return data in the response, however, the request
parameters are always null; I cant seem to POST data. Where am I going
wrong?

var json = JSON2.stringify({name: test});

$.ajax({
type: POST,
url: service,
data: json,
contentType: application/json; charset=utf-8,
dataType: json,
async: async,
success: function(o) {
 o = $.serviceHelper.jsonSerialize(o);
   callback(o);
},
error: this.dataServiceError
});

protected void doPost(javax.servlet.http.HttpServletRequest
request, javax.servlet.http.HttpServletResponse response) throws
javax.servlet.ServletException, IOException {

PrintWriter out = response.getWriter();
response.setContentType(text/json);
String json = gson.toJson(request.getParameter(name));
out.println(json);

}

-- 
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: Bouncy Castle 3party jars no longer loaded?

2010-05-04 Thread dau...@googlemail.com
On May 1, 12:50 pm, Nichole nichole.k...@gmail.com wrote:
 Hello,

    Are there changes to the allowed use of Bouncy Castle as a 3rd
 party library in SDK 1.3.3?

 I'm now getting an exception SHA1 digest error for org/bouncycastle/
 crypto/paddings/BlockCipherPadding.class which suggests that
 BouncyCastle is still being used,
 but classes in my app that use bouncy castle are not reporting their
 log statements.
 I added quite a bit of logging so see it drop off right before the
 first class using bouncy
 castle.  I even added a static method to a BC using class just to
 report that it was reached.
 I asserted that the classes are present in the web app with JarFile
 and JarEntry too.

    Have the classes suddenly been blacklisted, but a runtime exception
 isn't reported?

   Note that when I first noticed this last week, I repackaged my app
 and redeployed it a few
 times and it was successfully using Bouncy Castle again for that day,
 but the problem has
 returned.

    Thanks for your time,
        Nichole

 --

May I ask how you managed to use the BC API at all? I didn't success
in loading the BC API because of the restrictions of the
Security.addProvider() call.

-- 
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: Unowned relationship confusion

2010-05-04 Thread dau...@googlemail.com
Just my 2 cents: I was forced to use an unowned relationship for
my application because I had very large objects: My parent object
Journey contained thousands of JourneyPoints in a List element. A
call to makePersistent constantly hit the 30s deadline. By modeling
it as an unowned relationship and distributing the parent key by hand
to the JourneyPoints everything was fine again and the performance was
very good.

-- 
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] one project access classes in another project in same account

2010-05-04 Thread bhomass
using tomcat, I have been able to have one central web app access
classes from surrounding web apps by simply using URLClassLoader based
on the file path of the class folder.

is there a way to do the same once I deploy to GAE?

-- 
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] 500 Server Error

2010-05-04 Thread Alexander Gavrilov
Hello, GWT Gurus!

I am frequently getting 500 Server error, when application is running
on appspot, not locally. It is usually happens after application has
been just deployed or after a couple of hours I haven't touched it,
while it was running in browser.

In logs I get this exception:

#
com.google.inject.internal.FinalizableReferenceQueue$SystemLoader
loadFinalizer: Not allowed to access system class loader.

#
05-03 10:58PM 53.370
com.google.inject.internal.FinalizableReferenceQueue init: Failed to
start reference finalizer thread. Reference cleanup will only occur
when new references are created.
java.lang.reflect.InvocationTargetException
at com.google.appengine.runtime.Request.process-
a34bf020cfbce66a(Request.java)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Method.java:43)
at
com.google.inject.internal.FinalizableReferenceQueue.init(FinalizableReferenceQueue.java:
124)
at com.google.inject.internal.MapMaker
$QueueHolder.clinit(MapMaker.java:787)
at com.google.inject.internal.MapMaker$WeakEntry.init(MapMaker.java:
946)
at com.google.inject.internal.MapMaker$Strength
$1.newEntry(MapMaker.java:312)
at com.google.inject.internal.MapMaker
$StrategyImpl.newEntry(MapMaker.java:498)
at com.google.inject.internal.MapMaker
$StrategyImpl.newEntry(MapMaker.java:419)
at com.google.inject.internal.CustomConcurrentHashMap
$ComputingImpl.get(CustomConcurrentHashMap.java:2029)
at
com.google.inject.internal.BytecodeGen.getClassLoader(BytecodeGen.java:
149)
at
com.google.inject.internal.BytecodeGen.getClassLoader(BytecodeGen.java:
132)
at
com.google.inject.internal.BytecodeGen.newFastClass(BytecodeGen.java:
162)
at com.google.inject.internal.DefaultConstructionProxyFactory
$1.init(DefaultConstructionProxyFactory.java:52)
at
com.google.inject.internal.DefaultConstructionProxyFactory.create(DefaultConstructionProxyFactory.java:
50)
at com.google.inject.internal.ProxyFactory.create(ProxyFactory.java:
147)
at
com.google.inject.internal.ConstructorInjectorStore.createConstructor(ConstructorInjectorStore.java:
75)
at com.google.inject.internal.ConstructorInjectorStore.access
$000(ConstructorInjectorStore.java:27)
at com.google.inject.internal.ConstructorInjectorStore
$1.create(ConstructorInjectorStore.java:35)
at com.google.inject.internal.ConstructorInjectorStore
$1.create(ConstructorInjectorStore.java:31)
at com.google.inject.internal.FailableCache
$1.apply(FailableCache.java:35)
at com.google.inject.internal.MapMaker
$StrategyImpl.compute(MapMaker.java:549)
at com.google.inject.internal.MapMaker
$StrategyImpl.compute(MapMaker.java:419)
at com.google.inject.internal.CustomConcurrentHashMap
$ComputingImpl.get(CustomConcurrentHashMap.java:2041)
at com.google.inject.internal.FailableCache.get(FailableCache.java:
46)
at
com.google.inject.internal.ConstructorInjectorStore.get(ConstructorInjectorStore.java:
48)
at
com.google.inject.internal.ConstructorBindingImpl.initialize(ConstructorBindingImpl.java:
113)
at
com.google.inject.internal.InjectorImpl.initializeBinding(InjectorImpl.java:
367)
at
com.google.inject.internal.InjectorImpl.createJustInTimeBinding(InjectorImpl.java:
619)
at
com.google.inject.internal.InjectorImpl.createJustInTimeBindingRecursive(InjectorImpl.java:
551)
at
com.google.inject.internal.InjectorImpl.getJustInTimeBinding(InjectorImpl.java:
162)
at
com.google.inject.internal.InjectorImpl.getBindingOrThrow(InjectorImpl.java:
122)
at
com.google.inject.internal.InjectorImpl.getInternalFactory(InjectorImpl.java:
625)
at com.google.inject.internal.FactoryProxy.notify(FactoryProxy.java:
43)
at
com.google.inject.internal.BindingProcessor.runCreationListeners(BindingProcessor.java:
235)
at
com.google.inject.internal.InjectorBuilder.initializeStatically(InjectorBuilder.java:
132)
at
com.google.inject.internal.InjectorBuilder.build(InjectorBuilder.java:
106)
at com.google.inject.Guice.createInjector(Guice.java:93)
at com.google.inject.Guice.createInjector(Guice.java:70)
at com.google.inject.Guice.createInjector(Guice.java:60)
at
com.myapp.DispatcherServletContextListener.getInjector(DispatcherServletContextListener.java:
16)
at
com.google.inject.servlet.GuiceServletContextListener.contextInitialized(GuiceServletContextListener.java:
43)
at
org.mortbay.jetty.handler.ContextHandler.startContext(ContextHandler.java:
548)
at org.mortbay.jetty.servlet.Context.startContext(Context.java:136)
at
org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:
1250)
 

[appengine-java] Re: backup and restore options

2010-05-04 Thread dau...@googlemail.com
 I found some info on how to enable the remote API for GAE/J
applications by setting up the RemoteServlet in the application's
web.xml and then you should be able to use the bulkloader.py tool from
the python sdk to do backup/restore operation on the datastore of a
GAE/J app.
  I've added the remote API servlet in the web.xml, deployed it and
the remote API seems to be active since I get the This request did
not contain a necessary header message in the browser. However when

Could you please describe how you managed to accomplish this?

Thanks,
Markus

-- 
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] 500 Internal Server Error

2010-05-04 Thread Pieter Coucke
It seems to fail on the cron upload.  Have you checked your cron.xml syntax?

My problem was that I had every day 01:00 synchronized.  Removing
synchronize resolved the issue.
Also try with every 1 minutes synchronized instead of every 1 minute
synchronized.
This did work for me without errors on de dev server.

-- 
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] one project access classes in another project in same account

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

2010/5/4 bhomass bhom...@gmail.com:
 using tomcat, I have been able to have one central web app access
 classes from surrounding web apps by simply using URLClassLoader based
 on the file path of the class folder.

 is there a way to do the same once I deploy to GAE?

I don't think that this is allowed, as different GAE apps are not
allowed to act as one app and this is really going into that
direction.

So I think it's technically possible, but not allowed.


-- 
Mit freundlichen Grüßen,  // Bye,
  Patrick Cornelißen
  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.



Re: [appengine-java] How to make BlobServlet send non-empty response?

2010-05-04 Thread bimbo jones
hi,

You can redirect the upload servlet to another servlet that responds.

2010/5/3 Jaroslav Záruba jaroslav.zar...@gmail.com

 I'm trying to use SWFUpload for uploading images in my application but
 either this particular component or Flash does not like empty
 responses.
 Is it possible somehow to get any content in the response-body from
 uploadUrl?

 Regards
  J. Záruba

 --
 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] Re: indexes

2010-05-04 Thread Philip Tucker
Thanks. By table I mean annotated Java class. One reason I was
confused about the indexes is I don't see many of the ones I would
expect when I navigate to https://appengine.google.com/datastore/indexes,
but I guess they must exist or my queries would be failing.

On Apr 30, 2:16 pm, Tristan tristan.slomin...@gmail.com wrote:
 uhm... read the next section?

 http://code.google.com/appengine/docs/java/datastore/queriesandindexe...

 as far as indexes getting applied to existing tables... (not sure by
 what you mean by table), but yes, that's why when you upload new
 index it is building, it's being applied to existing stuff.

 On Apr 30, 12:54 am, Philip Tucker ptuc...@gmail.com wrote:





  According to this, The App Engine datastore maintains an index for
  every query an application intends to make.

 http://code.google.com/appengine/docs/java/datastore/queriesandindexe...

  Does GAE just scan the app Java code for Query.setFilter, or do we
  need to do annotate queries for these indexes to be generated.

  Also, it appears new indexes do not get applied to existing tables
  when we deploy application code with new queries or @INDEX annotations
  - is this correct? Is there a way to do that, or are we required to
  create a new table and copy the data over?

  --
  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: An entity group whose parent uses an unencoded String primary key?

2010-05-04 Thread Ian Marshall
To answer your questions, why not try something like the code snippet
below?

Cheers,

Ian


@PersistenceCapable(identityType = IdentityType.APPLICATION,
detachable = true)
public class User
{
@PrimaryKey
@Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
@Extension(vendorName=datanucleus, key=gae.encoded-pk,
value=true)
private String sEncodedKey;

/*
// This is optional, but I use it.
@Persistent
@Extension(vendorName=datanucleus, key=gae.pk-id, value=true)
private Long loKeyID;
*/

/*
// This is optional.
// One cannot define both a gae.pk-id and a gae.pk-name in the
same class.
@Persistent
@Extension(vendorName=datanucleus, key=gae.pk-name, value=true)
private String sKeyName;
*/

// Even though this field is an array list, the accessor methods
// for this field treat the relationship of this class with the child
class
// as 1-1 (not 1-N).
// This is a work-around for datanucleus-appengine issue 165: 
// Relation.ONE_TO_ONE_BI NPE
postInsert(PersistenceCapableMapping.java:1039)
@Persistent(mappedBy=userParent)
@Element(dependent=true)
@Order(extensions = @Extension(vendorName=datanucleus, key=list-
ordering,
 value=sEncodedKey ASC))
private ArrayListFavAnimal faFavAnimals = new
ArrayListFavAnimal();

public FavAnimal getFavAnimal()
{
FavAnimal faFavAnimal = null;

if ((faFavAnimals != null)  (!faFavAnimals.isEmpty()))
faFavAnimal = faFavAnimals.get(0);

return faFavAnimal;
}

public void setFavAnimal(FavAnimal favAnimal)
{
if (faFavAnimals == null)
faFavAnimals = new ArrayListFavAnimal();

if (!faFavAnimals.isEmpty())
faFavAnimals.clear();

if (faFavAnimals != null)
faFavAnimals.add(favAnimal);
}

...
}

@PersistenceCapable(identityType = IdentityType.APPLICATION,
detachable = true)
public class FavAnimal
{
@PrimaryKey
@Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
@Extension(vendorName=datanucleus, key=gae.encoded-pk,
value=true)
private String sEncodedKey;

@Persistent(dependent=false)
private User userParent;

...
}


FavAnimal fa = new FavAnimal();
user.setFavAnimal(fa);
fa.setUserParent(user);
pm.makePersistent(fa);

-- 
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] payment gateway integrations with appengine

2010-05-04 Thread Ikai L (Google)
Does Paypal work in India? They have an API for developers:

https://developer.paypal.com/

From what I've heard, their Java client may not work out of the box with App
Engine, though.

On Mon, May 3, 2010 at 11:54 AM, aswath satrasala 
aswath.satras...@gmail.com wrote:

 Hello,
 I looked into google-checkout, but it is currently for US  Europe only.
 I am looking to be able to bill the customer in Rupees, and hence would
 like to integrate with indian payment gateway systems into the appengine
 app.
 Any experiences on this

 Thanks
 -Aswath

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




-- 
Ikai Lan
Developer Relations, Google App Engine
Twitter: http://twitter.com/ikai
Delicious: http://delicious.com/ikailan


Google App Engine links:
Blog: http://googleappengine.blogspot.com
Twitter: http://twitter.com/app_engine
Reddit: http://www.reddit.com/r/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.



Re: [appengine-java] Fileupload Tutorial?

2010-05-04 Thread Ikai L (Google)
Here's some abandonware I wrote a while ago that does file upload using
Apache Commons File Upload:

http://github.com/ikai/DateEngine/blob/master/src/com/dateengine/controllers/PhotoServlet.java

http://github.com/ikai/DateEngine/blob/master/src/com/dateengine/controllers/PhotoServlet.javaNot
sure how this would work with GWT, though.

On Mon, May 3, 2010 at 8:04 PM, Raphael raphaelschae...@gmail.com wrote:

 Hi
 I'm really new to the whole GAE stuff. I've used Java, but always for
 desktop stuff, so for the past couple years I was mostly doing PHP for
 all my Web programming. Well, I decided to see how Java does and the
 GAE seemed just a really nice playground, but here come the problems.
 No clue of the whole servlet stuff.

 So short thing. I managed my way around. I'm though looking now for a
 simple fileupload tutorial with GWT/GAE. Does anybody know a good
 source?

 Thanks a lot
 Raphael

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




-- 
Ikai Lan
Developer Relations, Google App Engine
Twitter: http://twitter.com/ikai
Delicious: http://delicious.com/ikailan


Google App Engine links:
Blog: http://googleappengine.blogspot.com
Twitter: http://twitter.com/app_engine
Reddit: http://www.reddit.com/r/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.



Re: [appengine-java] Serialization Error on GData Spreadhseet

2010-05-04 Thread Ikai L (Google)
Are you storing something in the session, such as an instance of the GData
client?

On Mon, May 3, 2010 at 7:20 PM, Rudolf rudolfstolz...@googlemail.comwrote:

 Hello,

 I am new on Google App Engine;

 I wrote some code which accesses a Google Spreadsheet through the
 provided GData Java API;

 everythings works well running in the Eclipse local Environment or
 running the code on a local Apache Tomcat Server;

 nevertheless, running the code on the Google App Engine (deployed
 through Elipse) fails with the following error:
 Error: Server Error
 The server encountered an error and could not complete your request.
 If the problem persists, please report your problem and mention this
 error message and the query that caused it.

 the App Engine log gives me the following information:
 Uncaught exception from servlet
 java.lang.RuntimeException: java.io.NotSerializableException:
 com.google.gdata.client.spreadsheet.SpreadsheetService
at

 com.google.apphosting.runtime.jetty.SessionManager.serialize(SessionManager.java:
 361)
at

 com.google.apphosting.runtime.jetty.SessionManager.createEntityForSession(SessionManager.java:
 341)
 ...

 Any idea what I am doing wrong;

 thank you in advance for your help;

 Best Regards
 Rudolf

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




-- 
Ikai Lan
Developer Relations, Google App Engine
Twitter: http://twitter.com/ikai
Delicious: http://delicious.com/ikailan


Google App Engine links:
Blog: http://googleappengine.blogspot.com
Twitter: http://twitter.com/app_engine
Reddit: http://www.reddit.com/r/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.



Re: [appengine-java] Re: Cron maintenance NOW, Sun 5/2 9-11p PDT

2010-05-04 Thread Ikai L (Google)
No, this maintenance should have not changed any behavior.

On Mon, May 3, 2010 at 8:28 PM, Millisecond millisec...@gmail.com wrote:

 Were there any changes in behavior as a result of this work?

 Thought I'd heard something about long running (1s) cron jobs no
 longer interfering with user-generated requests but don't see any
 documentation of this related to last night's work.

 Thanks,
 -Casey

 On May 2, 9:13 pm, Wesley C (Google) 
 wesc+...@google.comwesc%2b...@google.com
 wrote:
  This is an alert that the planned cron maintenance is happening now. If
 you
  want to be notified of planned/scheduled downtimes, please subscribe to
 the
  read-only list athttp://
 groups.google.com/group/google-appengine-downtime-notify... you can
  go there now to subscribe as well as get more information on tonight's
 cron
  outage.
 
  thanks,
  -- wesley
  - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  Core Python Programming, Prentice Hall, (c)2007,2001
  Python Fundamentals, Prentice Hall, (c)2009
 http://corepythonprogramming.com
 
  wesley.j.chun :: w...@google.com
  developer relations :: google app engine
  @app_engine :: googleappengine.blogspot.com
 
  --
  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.




-- 
Ikai Lan
Developer Relations, Google App Engine
Twitter: http://twitter.com/ikai
Delicious: http://delicious.com/ikailan


Google App Engine links:
Blog: http://googleappengine.blogspot.com
Twitter: http://twitter.com/app_engine
Reddit: http://www.reddit.com/r/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.



Re: [appengine-java] Servlet request parameters empty

2010-05-04 Thread Stephan Hartmann
if you want to get your data as request parameter, you should use GET
instead of POST and /or let the default contentType
application/x-www-form-urlencoded and create your json object as either

var json = {name: test};  // and let jquery convert it to a query
string
or
var json = name=test;   // the desired query string

regards,
Stephan


2010/5/4 Rob robertastanfi...@gmail.com

 I'm running Google App Engine through IntelliJ Idea and am posting
 data to a Servlet using jQuery.ajax. I'm hitting the Servlet without
 issue and can return data in the response, however, the request
 parameters are always null; I cant seem to POST data. Where am I going
 wrong?

 var json = JSON2.stringify({name: test});

 $.ajax({
type: POST,
url: service,
data: json,
contentType: application/json; charset=utf-8,
dataType: json,
async: async,
success: function(o) {
 o = $.serviceHelper.jsonSerialize(o);
   callback(o);
},
error: this.dataServiceError
});

protected void doPost(javax.servlet.http.HttpServletRequest
 request, javax.servlet.http.HttpServletResponse response) throws
 javax.servlet.ServletException, IOException {

PrintWriter out = response.getWriter();
response.setContentType(text/json);
String json = gson.toJson(request.getParameter(name));
out.println(json);

}

 --
 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] Re: VerifyError on no-op default constructor

2010-05-04 Thread Attila Szegedi
I made a new version of the freemarker.jar, with a workaround for this
problem.

Download link for new freemarker JAR: https://sourceforge.net/
projects/freemarker/files/freemarker/2.3.16/freemarker-gae-pre3.jar/
download

The workaround will delay loading of the
FreeMarkerJspApplicationContext class as long as possible. It will now
let the JSP taglibs work in FreeMarker on GAE as long as the custom
JSP tags are not trying to use either
JspFactory.getJspApplicationContext() or PageContext.getELContext(). I
expect majority of taglibs out there fall into this category; those
that do rely on this functionality though are, for the time being, out
of luck - until GAE allows our class that implements
JspApplicationContext through the verifier.

Don, since this workaround is only partial, the ultimate solution
would be to let our FreeMarkerJspApplicationContext through the
verifier. Do you see any problem with that going forward?

Thanks,
  Attila.

On May 3, 5:54 pm, Don Schwarz schwa...@google.com wrote:
 I suspect that this is due to the way we make
 javax.servlet.jsp.JspApplicationContext available to application code but do
 not currently make javax.el.* available.  Thus, the javax.el.ELResolver
 class that you are providing in your application is not the same class that
 your JspApplicationContext implementation should reference.

 I don't know that there is anything you can do in your application to work
 around this for the moment (short of not implementing the
 JspApplicationContext interface), but coincidentally we are already planning
 to fix this in an upcoming release.

 If you can provide me with a compiled war directory for your test
 application (either privately or by attaching to the bug), I can determine
 whether our solution will work for your case as well.

 On Mon, May 3, 2010 at 8:45 AM, Sudhir Ramanandi sramana...@gmail.comwrote:



  Google, atleast speak, *what does this exception mean, *then I can fix the
  freemarker code.

  SN

  On Fri, Apr 30, 2010 at 10:57 AM, Sudhir Ramanandi 
  sramana...@gmail.comwrote:

  If the issue can't be fixed, can any one explain this strange behavior
  atlest ! thn we can fix our code.

  Thanks
  SN

  On Wed, Apr 28, 2010 at 11:06 AM, Sudhir Ramanandi 
  sramana...@gmail.comwrote:

  Can anyone from google explain what
  java.lang.VerifyError: (class:
  freemarker/ext/jsp/FreeMarkerJspApplicationContext, method: init
  signature: ()V) Incompatible argument to function, means?

  See the issue
 http://code.google.com/p/googleappengine/issues/detail?id=3157

  I have attached the source of class FreeMarkerJspApplicationContext here.

  The line that throws above error is FreeMarkerJspApplicationContext.
  class.getName();

  What's wrong with this class? The class doesn't seems to have any thing
  unusual. Why this weird behavior?

  Seems google will never let freemarker to run on GAE

  Thanks
  SN

  --
  Sudhir Ramanandi
 http://www.ramanandi.org

  --
  Sudhir Ramanandi
 http://www.ramanandi.org

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



Re: [appengine-java] Cache pages in Memcache

2010-05-04 Thread Ikai L (Google)
This is tangential to your question, but have you looked at using the
cache-control header? That is, setting Cache-Control to public;
max-age=3600;. This'll cause proxy servers between App Engine and your
client to cache the page.

Gzip is handled by Google infrastructure, so this is something you should
never have to worry about since it happens after you have already returned a
response.

I suspect the way to do what you are asking in a filter is to pass a
HttpServletResponse wrapper to doFilter that captures the response somehow
(I am not familiar with how this would work, you may have to consult how
EHCache does it), then places it into Memcache using the URI as a key.


On Mon, May 3, 2010 at 10:39 PM, Sergio Lopes slo...@gmail.com wrote:

 Hi

 Are there anyone using some kind of server-side page cache using
 memcached?
 I'm thinking in a Filter that put page results in memcache when first
 accessed, and then getting that result in former accesses.

 The idea is simple but the implementation is not. (how to get the
 first request response? how to implement proper header management in
 that filter? how to not disable gzip using this?)

 I tried Ehcache with the Web Module (https://groups.google.com/group/
 google-appengine-java/browse_thread/thread/7cfa0eae3bc26444) but it's
 not working.

 Maybe someone here has an idea on how to implement an effective page
 cache using Java

 Tks
 Sérgio

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




-- 
Ikai Lan
Developer Relations, Google App Engine
Twitter: http://twitter.com/ikai
Delicious: http://delicious.com/ikailan


Google App Engine links:
Blog: http://googleappengine.blogspot.com
Twitter: http://twitter.com/app_engine
Reddit: http://www.reddit.com/r/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.



Re: [appengine-java] Problems enabling Second-level cache with JPA

2010-05-04 Thread Ikai L (Google)
If you're able to write a tutorial, it would benefit everyone greatly. We'll
link to it in a community update blog post.

On Tue, May 4, 2010 at 5:05 AM, Sergio Lopes slo...@gmail.com wrote:


 Anyway, just a suggestion... I think it'd be better to GAE community
 to have better tutorials.

 --
 Ikai Lan
 Developer Relations, Google App Engine
 Twitter: http://twitter.com/ikai
 Delicious: http://delicious.com/ikailan

 
 Google App Engine links:
 Blog: http://googleappengine.blogspot.com
 Twitter: http://twitter.com/app_engine
 Reddit: http://www.reddit.com/r/appengine

 ppengine target=_blankhttp://www.reddit.com/r/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: Cache pages in Memcache

2010-05-04 Thread Nacho Coloma
Hi Sergio,

 I'm thinking in a Filter that put page results in memcache when first
 accessed, and then getting that result in former accesses.

That should work. All page cache implementations do more or less the
same.

 The idea is simple but the implementation is not. (how to get the
 first request response? how to implement proper header management in
 that filter? how to not disable gzip using this?)

* If there is content in memcache, you can deliver it and exit.
Otherwise, let the request proceed, and store in the cache.
* Be sure to set the cache timeout and calculate the cache key
correctly (e.g. include the user ID or the user locale if the cached
contents depend on that).
* For HTTP headers, this presentation may help:
http://www.slideshare.net/icoloma/caching-web-contents-in-the-browser-999134

It's  more or less the same with JSP page fragments (except the
headers, of course). No rocket science.

Cheers,

Nacho.

-- 
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] SimpleDS 1.0_RC1 is out

2010-05-04 Thread Nacho Coloma
We are really excited with this release, which is the first feature-
complete release of SimpleDS. Lots of things have been included in so
little time.

Getting up-to-date with AppEngine


It's hard to keep up the pace with these guys. This release includes:

* Unindexed attributes.
* Cursors support.
* IN and != clauses.

Cache
=

We have included a great Level 1 and Level 2 cache [1]. If you come
from JDO/JPA, you may already know how it works:

* Level 1 cache: This is basically a Map bound to the current thread.
Until the end of the current request, any get() invocation will check
this cache first. If a match is found, no invocation will be
propagated to GAE.
* Level 2 cache: Datastore entities are also stored in memcache, which
is a second chance to get a positive match.

Cacheable entities must be marked with @Cacheable, with an optional
expiration time. This feature will work with single and batch get(),
and the cache entries are updated with put() and delete()
invocations.

// Invoke memcache or the datastore
ListMyData data = entityManager.get(key1, key2, key3);

// this does not invoke anything (resolved by the Level 1 cache)
MyData d2 = entityManager.get(key1);

Functions


We are going extremely functional these days [2]. This release
includes a package with functions to transform collections and
PagedList instances, which can be combined with batch get() to get
even better performance results. This is a simple example, equivalent
to a common situation with relationships:

// n + 1 requests to the datastore
ListMyData data = entityManager.find(query);
CollectionParent parents =
Lists.newArrayListwithCapacity(data.size());
for (MyData d : data) {
  parents.add(entityManager.get(d.getKey().getParent());
}

// Transformations: 2 requests
ListMyData data = entityManager.find(query);
CollectionKey parentKeys = Collections2.transform(data, new
EntityToParentKeyFunction(MyData.class));
CollectionParent parents = entityManager.get(parentKeys);

That's all it takes to get all entities and their parents, and store
them in the Level 1 cache so any request by PK will not hit memcache
or the datastore. This release includes functions to retrieve parent
and foreign keys, and also works with PagedList. We have taken two
real-world snapshots with just this optimization (transformation +
cacheable), applied to a single loop:

Before: http://www.flickr.com/photos/koliseocom/4575062969/sizes/l/
After: http://www.flickr.com/photos/koliseocom/4575696456/sizes/o

Notice that requests before are targeted to the datastore, while
most of the after are memcache requests.

Background tasks
==

I know that background tasks [3] are in the roadmap for AppEngine, but
we needed these today. This started as an exercise to upgrade the
datastore schema (add properties, delete entities, etc) and ended up
as a full reusable implementation of tasks that I expect to deprecate
once that AppEngine includes its own, probably better, implementation.

Background tasks require adding a servlet to web.xml (and optionally
appengine-web.xml as an admin-console entry) and configuring the tasks
on application start using plain Java. Tasks can be invoked directly
by cron triggers, queues or by POST requests.

public class WriteBehindCacheTask extends IterableTaskMyClass {

protected WriteBehindCacheTask() {
super(my-task-id);
}

@Override
protected SimpleQuery createQuery(TaskRequest request) {
return entityManager.createQuery(MyClass.class);
}

@Override
protected void process(MyClass entity, TaskRequest request) {
// ...modify entity...
entityManager.put(entity);
}

}

Query cursors and execution deferral will be done transparently (no
need to limit or handle cursors). There are some implementation
superclasses depending on what you need to do, and some of them just
use the raw AppEngine datastore and don't even require SimpleDS to
work.

This is the first feature-complete release of SimpleDS. Next on the
roadmap: cached queries and we may be revisiting relations.

As always, all kind of feedback is welcome.

Nacho.

[1] http://code.google.com/p/simpleds/wiki/Cache
[2] http://code.google.com/p/simpleds/wiki/Functions
[3] http://code.google.com/p/simpleds/wiki/BackgroundTasks

-- 
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: slow responses for query

2010-05-04 Thread Ikai L (Google)
Query performance is generally a function of how many objects have to be
returned in the simple case, which seems to be what you are doing here. How
many PlayerGameStates exist per User?

Queries work like this:

- iterate through the index to find all PlayerGameStates with the property
given to find the keys of all PlayerGameStates matching this property
- run the query for all objects

Are PlayerGameStates child entities of a User? I have to double check, but I
believe this could reduce the App Engine datastore's ability to parallelize
the queries-by-key, though the effect of this should be negligible if you
are only fetching 5 objects.

The reason I mentioned denormalizing is because the concept of
normalization doesn't make as much sense with App Engine's datastore. We
don't provide referential integrity, for instance, and transactions exist
around entity groups, not globally. You don't pay a penalty for storing data
that is sparse - some User entities can be huge, some can be tiny. You
should optimize for reads. Doing multiple writes and the risk of data
getting out of sync can suck, but as long as it is recoverable you should be
okay. Contrast the performance of the query above with storing
PlayerGameStates inside User. You'd do this:

- Get user by key

That's it! This is really fast, so you don't have to go through doing an
unnecessary query - you just pay your cost at write time, possibly
asynchronously.

On Tue, May 4, 2010 at 12:14 PM, Philip Tucker ptuc...@gmail.com wrote:

 I don't think duplicating the data won't work because then I'll be
 doing 2 writes for every turn of the game, and I need that to be fast.
 I don't mind if fetching a user's game list is a little bit slow, but
 5-20 seconds is too much. I can denormalize all the data such that
 Game 2 fields for each entry in PlayerGameState if that helps, but I'd
 still like to know why it's so slow now.

 I do have appstat installed. For one particular misbehaving request,
 the query fetches 5 PlayerGameState records. It iterates through the
 first 4 taking ~20 ms each, then I see a RunQuery taking 8 seconds.

 I don't see an easy way to export appstat data, but I can include more
 details if necessary.

 Here's the query code in question.

SetKey myUserCache = Sets.newHashSet();
Query query = pm.newQuery(PlayerGameState.class);
query.declareParameters(
com.google.appengine.api.datastore.Key userKeyParam);
query.setFilter(userKey == userKeyParam);
ListPlayerGameState playerStates =
(ListPlayerGameState) query.execute(playerKey);
ListGame games = Lists.newArrayList();
for (PlayerGameState playerState : playerStates) {
  Game game = playerState.getGame();
  myUserCache.add(game.getPlayerState().getUserKey());
  myUserCache.add(game.getOpponentState().getUserKey());
  games.add(game);
 }



 On May 3, 1:16 am, Ikai L (Google) ika...@google.com wrote:
  Indexes don't work the same way they do in relational databases. If you
 can
  fetch a value with a query, that likely means an index exists on that
  property. In a relational database, when an index is not present, the
  database will do a full table scan.
 
  A fetch by Key is always fast. Have you considered storing multiple games
  inside a single Game instance? Or simply storing the data you need both
 in
  the Game instances? If you want to cut down on request latency, do as
 many
  by key gets as possible. Don't try to approach the modeling from a
  normalization perspective. How many entities are you retrieving? And have
  you tried looking at what's happening via AppStats yet (
 http://code.google.com/appengine/docs/java/tools/appstats.html)?
 
 
 
 
 
  On Fri, Apr 30, 2010 at 1:54 AM, Philip Tucker ptuc...@gmail.com
 wrote:
   I've got a Game object that includes two PlayerGameState objects. Both
   are persistence-capable. My query fetches all PlayerGameState objects
   for a particular user, then I get the associated game and other
   player. The initial fetch is always fast, and the entire operation is
   generally lass than a second. But periodically, maybe 5 of the time,
   it takes much longer, from 5-20 seconds. It's not fetching the
   PlayerGameState objects that's slow, it's accessing
   PlagerGameState.game and Game.playerStates.
 
   I shouldn't need to add an index on the keys, should I? I'd like to
   fetch the Game objects directly but as far as I can tell we can't
   query on a joined table; ie, I can't do something like select from
   Game, PlayerGameState join on PlayerGameState.game where
   PlayerGameState.userKey == userKeyParam.
 
   @PersistenceCapable(identityType = IdentityType.APPLICATION)
   public class Game {
@PrimaryKey
@Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
private Key key;
 
@Persistent(mappedBy = game)
@Element(dependent = true)
private ListPlayerGameState playerStates;
 
...
   }
 
   @PersistenceCapable(identityType = 

[appengine-java] Re: unable to use sdk 1.3.3.1

2010-05-04 Thread RockyWolf
I removed my eclipse ganymade, and installed eclipse galileo. Running
app engine 1.3.3.1 now allows me to run my app, but I still get the
previous
java.net.ConnectException: Connection timed out: connect exception.



On May 3, 3:40 pm, RockyWolf jamesisaa...@gmail.com wrote:
 Hi, I can't understand why my app which runs on 1.2.1 doesn't run on
 1.3.3.1 .

 I keep getting the following error message when I run my app:

 com.google.appengine.tools.info.RemoteVersionFactory getVersion
 INFO: Unable to 
 accesshttp://appengine.google.com/api/updatecheck?runtime=javarelease=1.3['1.0']
 java.net.ConnectException: Connection timed out: connect
         at java.net.PlainSocketImpl.socketConnect(Native Method)
         at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
         at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:
 195)
         at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182)
         at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
         at java.net.Socket.connect(Socket.java:519)
         at java.net.Socket.connect(Socket.java:469)
         at sun.net.NetworkClient.doConnect(NetworkClient.java:163)
         at sun.net.www.http.HttpClient.openServer(HttpClient.java:394)
         at sun.net.www.http.HttpClient.openServer(HttpClient.java:529)
         at sun.net.www.http.HttpClient.init(HttpClient.java:233)
         at sun.net.www.http.HttpClient.New(HttpClient.java:306)
         at sun.net.www.http.HttpClient.New(HttpClient.java:323)
         at
 sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(HttpURLConnectio...
 837)
         at
 sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:
 778)
         at
 sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:
 703)
         at
 sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection
 1026)
         at java.net.URL.openStream(URL.java:1009)
         at
 com.google.appengine.tools.info.RemoteVersionFactory.getVersion(RemoteVersi­onFactory.java:
 70)
         at
 com.google.appengine.tools.info.UpdateCheck.checkForUpdates(UpdateCheck.jav­a:
 94)
         at
 com.google.appengine.tools.info.UpdateCheck.doNagScreen(UpdateCheck.java:
 164)
         at
 com.google.appengine.tools.info.UpdateCheck.maybePrintNagScreen(UpdateCheck­.java:
 132)
         at com.google.appengine.tools.development.DevAppServerMain
 $StartAction.apply(DevAppServerMain.java:150)
         at com.google.appengine.tools.util.Parser
 $ParseResult.applyArgs(Parser.java:48)
         at
 com.google.appengine.tools.development.DevAppServerMain.init(DevAppServer­Main.java:
 113)
         at
 com.google.appengine.tools.development.DevAppServerMain.main(DevAppServerMa­in.java:
 89)
 java.lang.RuntimeException: Unable to locate the App Engine agent.
 Please use dev_appserver, KickStart,  or set the jvm flag: -
 javaagent:sdk_root/lib/agent/appengine-agent.jar
         at
 com.google.appengine.tools.development.DevAppServerFactory.testAgentIsInsta­lled(DevAppServerFactory.java:
 102)
         at
 com.google.appengine.tools.development.DevAppServerFactory.createDevAppServ­er(DevAppServerFactory.java:
 77)
         at
 com.google.appengine.tools.development.DevAppServerFactory.createDevAppServ­er(DevAppServerFactory.java:
 38)
         at com.google.appengine.tools.development.DevAppServerMain
 $StartAction.apply(DevAppServerMain.java:153)
         at com.google.appengine.tools.util.Parser
 $ParseResult.applyArgs(Parser.java:48)
         at
 com.google.appengine.tools.development.DevAppServerMain.init(DevAppServer­Main.java:
 113)
         at
 com.google.appengine.tools.development.DevAppServerMain.main(DevAppServerMa­in.java:
 89)
 Caused by: java.lang.NoClassDefFoundError: com/google/appengine/tools/
 development/agent/AppEngineDevAgent
         at
 com.google.appengine.tools.development.DevAppServerFactory.testAgentIsInsta­lled(DevAppServerFactory.java:
 98)
         ... 6 more
 Caused by: java.lang.ClassNotFoundException:
 com.google.appengine.tools.development.agent.AppEngineDevAgent
         at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
         at java.security.AccessController.doPrivileged(Native Method)
         at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
         at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
         at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
         at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
         at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
         ... 7 more

 I tried to use the update site for eclipse ganymade, but I got the
 error, No repository found.
 Then I followed the instructions for installing the Google Plugin for
 Eclipse from zip files. (http://code.google.com/eclipse/docs/install-
 from-zip.html)

 But when I tried to install  Ganymede Update Site  Web and Java EE
 Development  Web Developer Tools,  the 

Re: [appengine-java] Re: indexes

2010-05-04 Thread Tristan Slominski
Ah, I understand. Yeah, they don't show you the automatic ones.

On Tue, May 4, 2010 at 03:16, Philip Tucker ptuc...@gmail.com wrote:

 Thanks. By table I mean annotated Java class. One reason I was
 confused about the indexes is I don't see many of the ones I would
 expect when I navigate to https://appengine.google.com/datastore/indexes,
 but I guess they must exist or my queries would be failing.

 On Apr 30, 2:16 pm, Tristan tristan.slomin...@gmail.com wrote:
  uhm... read the next section?
 
  http://code.google.com/appengine/docs/java/datastore/queriesandindexe...
 
  as far as indexes getting applied to existing tables... (not sure by
  what you mean by table), but yes, that's why when you upload new
  index it is building, it's being applied to existing stuff.
 
  On Apr 30, 12:54 am, Philip Tucker ptuc...@gmail.com wrote:
 
 
 
 
 
   According to this, The App Engine datastore maintains an index for
   every query an application intends to make.
 
  http://code.google.com/appengine/docs/java/datastore/queriesandindexe.
 ..
 
   Does GAE just scan the app Java code for Query.setFilter, or do we
   need to do annotate queries for these indexes to be generated.
 
   Also, it appears new indexes do not get applied to existing tables
   when we deploy application code with new queries or @INDEX annotations
   - is this correct? Is there a way to do that, or are we required to
   create a new table and copy the data over?
 
   --
   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 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.



Re: [appengine-java] Re: Inequality Filters Are Allowed On One Property Only

2010-05-04 Thread Tristan Slominski
Yes, but then you just do a test on the entity you got from the query (one
test on one entity, fast)

so add a last step.. using previous logic you end up with x2=71 y2=75
final step will beis (z of 76)  (y2 of 75)   if no... no results..   if
yes... have 1 result

that should solve that part

On Tue, May 4, 2010 at 02:04, romesh soni soni.rom...@gmail.com wrote:

 Hi Tristan,

 Really appreciate the logic you suggested.  But consider this case:

 There are only two intervals in db: x1 = 4   y1 = 70   and  x2 = 71   y2 =
 75.

 I want to search by 76. The 76 doesn't fall in any category but still the
 query will return the second interval, which is not correct.
 Instead the query should say that there is no matching interval. Am I
 correct?

 Regards
 Romesh


 On Tue, May 4, 2010 at 11:09 AM, Tristan Slominski 
 tristan.slomin...@gmail.com wrote:

 in that case the solution to your dilemma is as follows

 query.addFilter(x, FilterOptions.LESS_THAN, z);
 query.addSort(x, SortOrder.DESC);

 then execute the query with a limit of 1
 that is the answer you seek

 in other words...

 assume you have two intervalsx1 = 4   y1 = 70   and  x2 = 71   y2 =
 75.
 you want to find interval that matches your condition ofx  74  y

 add filter for x less than 74 will give you two results where x1=4 in
 first result and x2=71 in second result
 now sort these results descending so that x2 is the first result   x2=71
 x1=4
 set limit of 1 gives your query a result of x2

 you don't need property y

 does that work for you?

 On Mon, May 3, 2010 at 22:45, romesh soni soni.rom...@gmail.com wrote:

 Hi Tristan,

 You got a good catch. But the code which populates the data will never
 let this happen. If there is a pair x = 4 and y = 10, then there will be no
 such other pair which consist values between 4 and 10. there will be one and
 only one set for values 4,5,6,7,8,9,10 and that will be (4,10). I hope my
 explanation is helpful. So it is guaranteed of having one solution per
 query.

 On Mon, May 3, 2010 at 7:31 PM, Tristan Slominski 
 tristan.slomin...@gmail.com wrote:

 Hey, so I've been thinking about the problem description... you
 mentioned that there will ever only be one solution for the query, but that
 doesn't seem like a valid constraint. For example, let x = 4 and y = 10, 
 let
 x2 = 5 and y2 = 11.  The value of z = 6 will result in two solutions.

 The reason I am asking, is that the contraint of only one solution
 existing suggest a different mapping of solutions than the one you 
 suggested
 (not sure what that different approach would be yet, but it could be
 something along the lines of enumerating the intervals).

 Can you guarantee the constraint of only one solution per query?

 On May 3, 2010 3:01 AM, romesh soni soni.rom...@gmail.com wrote:

 Hi Thomas,

 the possible value of x and y can be 2020 and 203204206207.
 do you see that it is possible to make such thing in 5000 element
 limitation. Are you talking of ArrayList?

 Your solution is good for small list, but I am afraid that it will not
 suit my requirement..




 On Mon, May 3, 2010 at 1:00 PM, Thomas mylee...@gmail.com wrote:
 
  Hi romesh:
 
 Datastor...

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

Re: [appengine-java] Re: Inequality Filters Are Allowed On One Property Only

2010-05-04 Thread romesh soni
Hey Tristan,

Seems you have got it solved. Thanks. I think it should work for me without
any issues. I will let you know once I implement it.
You have a good logic man. Can I add you on Gmail?

Thanks and Regards
Romesh

On Tue, May 4, 2010 at 7:08 PM, Tristan Slominski 
tristan.slomin...@gmail.com wrote:

 Yes, but then you just do a test on the entity you got from the query (one
 test on one entity, fast)

 so add a last step.. using previous logic you end up with x2=71 y2=75
 final step will beis (z of 76)  (y2 of 75)   if no... no results..
 if yes... have 1 result

 that should solve that part


 On Tue, May 4, 2010 at 02:04, romesh soni soni.rom...@gmail.com wrote:

 Hi Tristan,

 Really appreciate the logic you suggested.  But consider this case:

 There are only two intervals in db: x1 = 4   y1 = 70   and  x2 = 71   y2 =
 75.

 I want to search by 76. The 76 doesn't fall in any category but still the
 query will return the second interval, which is not correct.
 Instead the query should say that there is no matching interval. Am I
 correct?

 Regards
 Romesh


 On Tue, May 4, 2010 at 11:09 AM, Tristan Slominski 
 tristan.slomin...@gmail.com wrote:

 in that case the solution to your dilemma is as follows

 query.addFilter(x, FilterOptions.LESS_THAN, z);
 query.addSort(x, SortOrder.DESC);

 then execute the query with a limit of 1
 that is the answer you seek

 in other words...

 assume you have two intervalsx1 = 4   y1 = 70   and  x2 = 71   y2 =
 75.
 you want to find interval that matches your condition ofx  74  y

 add filter for x less than 74 will give you two results where x1=4 in
 first result and x2=71 in second result
 now sort these results descending so that x2 is the first result   x2=71
 x1=4
 set limit of 1 gives your query a result of x2

 you don't need property y

 does that work for you?

 On Mon, May 3, 2010 at 22:45, romesh soni soni.rom...@gmail.com wrote:

 Hi Tristan,

 You got a good catch. But the code which populates the data will never
 let this happen. If there is a pair x = 4 and y = 10, then there will be no
 such other pair which consist values between 4 and 10. there will be one 
 and
 only one set for values 4,5,6,7,8,9,10 and that will be (4,10). I hope my
 explanation is helpful. So it is guaranteed of having one solution per
 query.

 On Mon, May 3, 2010 at 7:31 PM, Tristan Slominski 
 tristan.slomin...@gmail.com wrote:

 Hey, so I've been thinking about the problem description... you
 mentioned that there will ever only be one solution for the query, but 
 that
 doesn't seem like a valid constraint. For example, let x = 4 and y = 10, 
 let
 x2 = 5 and y2 = 11.  The value of z = 6 will result in two solutions.

 The reason I am asking, is that the contraint of only one solution
 existing suggest a different mapping of solutions than the one you 
 suggested
 (not sure what that different approach would be yet, but it could be
 something along the lines of enumerating the intervals).

 Can you guarantee the constraint of only one solution per query?

 On May 3, 2010 3:01 AM, romesh soni soni.rom...@gmail.com wrote:

 Hi Thomas,

 the possible value of x and y can be 2020 and 203204206207.
 do you see that it is possible to make such thing in 5000 element
 limitation. Are you talking of ArrayList?

 Your solution is good for small list, but I am afraid that it will not
 suit my requirement..




 On Mon, May 3, 2010 at 1:00 PM, Thomas mylee...@gmail.com wrote:
 
  Hi romesh:
 
 Datastor...

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

Re: [appengine-java] Re: Inequality Filters Are Allowed On One Property Only

2010-05-04 Thread Tristan Slominski
Sure, good luck.

On May 4, 2010 9:03 AM, romesh soni soni.rom...@gmail.com wrote:

Hey Tristan,

Seems you have got it solved. Thanks. I think it should work for me without
any issues. I will let you know once I implement it.
You have a good logic man. Can I add you on Gmail?

Thanks and Regards
Romesh



On Tue, May 4, 2010 at 7:08 PM, Tristan Slominski 
tristan.slomin...@gmail.com wrote:

 Yes, bu...

-- 
You received this message because you are subscribed to the Google Groups
Google App Engine for...

-- 
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: Servlet request parameters empty

2010-05-04 Thread Rob
That did the trick, I love you man! :O)

Now, how would I perform the same with a POST if I needed to?

-Rob



On May 4, 2:07 am, Stephan Hartmann hartm...@metamesh.de wrote:
 if you want to get your data as request parameter, you should use GET
 instead of POST and /or let the default contentType
 application/x-www-form-urlencoded and create your json object as either

     var json = {name: test};  // and let jquery convert it to a query
 string
 or
     var json = name=test;   // the desired query string

 regards,
 Stephan

 2010/5/4 Rob robertastanfi...@gmail.com





  I'm running Google App Engine through IntelliJ Idea and am posting
  data to a Servlet using jQuery.ajax. I'm hitting the Servlet without
  issue and can return data in the response, however, the request
  parameters are always null; I cant seem to POST data. Where am I going
  wrong?

  var json = JSON2.stringify({name: test});

  $.ajax({
             type: POST,
             url: service,
             data: json,
             contentType: application/json; charset=utf-8,
             dataType: json,
             async: async,
             success: function(o) {
                  o = $.serviceHelper.jsonSerialize(o);
                    callback(o);
             },
             error: this.dataServiceError
         });

     protected void doPost(javax.servlet.http.HttpServletRequest
  request, javax.servlet.http.HttpServletResponse response) throws
  javax.servlet.ServletException, IOException {

         PrintWriter out = response.getWriter();
         response.setContentType(text/json);
         String json = gson.toJson(request.getParameter(name));
         out.println(json);

     }

  --
  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%2B 
  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 
 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: Cache pages in Memcache

2010-05-04 Thread Sergio Lopes
Thanks for your answers!

The Cache-control idea is a good one, I think I'll try something here.
But maybe it's a good idea to have some kind of server cache too.

Ehcache Web Module has a nice Java Filter that threats many corner
cases (headers, gzip, ...). The only problem is that it's too coupled
to Ehcache. I think I'll try to fork that project to use their Filter
with AppEngine's memcache :)



On May 4, 6:22 am, Nacho Coloma icol...@gmail.com wrote:
 Hi Sergio,

  I'm thinking in a Filter that put page results in memcache when first
  accessed, and then getting that result in former accesses.

 That should work. All page cache implementations do more or less the
 same.

  The idea is simple but the implementation is not. (how to get the
  first request response? how to implement proper header management in
  that filter? how to not disable gzip using this?)

 * If there is content in memcache, you can deliver it and exit.
 Otherwise, let the request proceed, and store in the cache.
 * Be sure to set the cache timeout and calculate the cache key
 correctly (e.g. include the user ID or the user locale if the cached
 contents depend on that).
 * For HTTP headers, this presentation may 
 help:http://www.slideshare.net/icoloma/caching-web-contents-in-the-browser...

 It's  more or less the same with JSP page fragments (except the
 headers, of course). No rocket science.

 Cheers,

 Nacho.

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



Re: [appengine-java] Re: Servlet request parameters empty

2010-05-04 Thread Stephan Hartmann
2010/5/4 Rob robertastanfi...@gmail.com

 That did the trick, I love you man! :O)


:-)


 Now, how would I perform the same with a POST if I needed to?


If you want to POST your data as key/value pairs like with GET, and jQuery
puts it into the body of the request instead of the query string (i don't
know the implementation details, request parameters as query string are just
fine even if it is a POST request) you have to make sure that the
contentType is the default application/x-www-form-urlencoded. Just give it
a try.

However, if you want to post the data as JSON fragment (as i would assume
from your original post from the contentType of application/json), i think
setting processData to false could do it. But in your servlet you won't
get the values as request parameters anymore. Instead you have to parse the
input stream of the request, e.g. with Gson to a Java object.

regards,
Stephan



 On May 4, 2:07 am, Stephan Hartmann hartm...@metamesh.de wrote:
  if you want to get your data as request parameter, you should use GET
  instead of POST and /or let the default contentType
  application/x-www-form-urlencoded and create your json object as either
 
  var json = {name: test};  // and let jquery convert it to a query
  string
  or
  var json = name=test;   // the desired query string
 
  regards,
  Stephan
 
  2010/5/4 Rob robertastanfi...@gmail.com
 
 
 
 
 
   I'm running Google App Engine through IntelliJ Idea and am posting
   data to a Servlet using jQuery.ajax. I'm hitting the Servlet without
   issue and can return data in the response, however, the request
   parameters are always null; I cant seem to POST data. Where am I going
   wrong?
 
   var json = JSON2.stringify({name: test});
 
   $.ajax({
  type: POST,
  url: service,
  data: json,
  contentType: application/json; charset=utf-8,
  dataType: json,
  async: async,
  success: function(o) {
   o = $.serviceHelper.jsonSerialize(o);
 callback(o);
  },
  error: this.dataServiceError
  });
 
  protected void doPost(javax.servlet.http.HttpServletRequest
   request, javax.servlet.http.HttpServletResponse response) throws
   javax.servlet.ServletException, IOException {
 
  PrintWriter out = response.getWriter();
  response.setContentType(text/json);
  String json = gson.toJson(request.getParameter(name));
  out.println(json);
 
  }
 
   --
   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.comgoogle-appengine-java%2B
 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.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.



Re: [appengine-java] Re: VerifyError on no-op default constructor

2010-05-04 Thread Don Schwarz
On Tue, May 4, 2010 at 4:15 AM, Attila Szegedi szege...@gmail.com wrote:

 I made a new version of the freemarker.jar, with a workaround for this
 problem.

 Download link for new freemarker JAR: https://sourceforge.net/
 projects/freemarker/files/freemarker/2.3.16/freemarker-gae-pre3.jar/
 download

 The workaround will delay loading of the
 FreeMarkerJspApplicationContext class as long as possible. It will now
 let the JSP taglibs work in FreeMarker on GAE as long as the custom
 JSP tags are not trying to use either
 JspFactory.getJspApplicationContext() or PageContext.getELContext(). I
 expect majority of taglibs out there fall into this category; those
 that do rely on this functionality though are, for the time being, out
 of luck - until GAE allows our class that implements
 JspApplicationContext through the verifier.

 Ah, great, glad you found a partial workaround, at least.


 Don, since this workaround is only partial, the ultimate solution
 would be to let our FreeMarkerJspApplicationContext through the
 verifier. Do you see any problem with that going forward?

 As I said earlier in this thread, I believe this will be fixed shortly
(most likely in our next release).

If you'd like me to confirm that this works, please provide a compiled
application (or instructions how to compile one) and I will test it out
against our release candidate.

Thanks,
Don

-- 
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: Servlet request parameters empty

2010-05-04 Thread Rob
Just read the and/or, POST working great this way too. Thanks again!
-Rob

On May 4, 7:30 am, Rob robertastanfi...@gmail.com wrote:
 That did the trick, I love you man! :O)

 Now, how would I perform the same with a POST if I needed to?

 -Rob

 On May 4, 2:07 am, Stephan Hartmann hartm...@metamesh.de wrote:





  if you want to get your data as request parameter, you should use GET
  instead of POST and /or let the default contentType
  application/x-www-form-urlencoded and create your json object as either

      var json = {name: test};  // and let jquery convert it to a query
  string
  or
      var json = name=test;   // the desired query string

  regards,
  Stephan

  2010/5/4 Rob robertastanfi...@gmail.com

   I'm running Google App Engine through IntelliJ Idea and am posting
   data to a Servlet using jQuery.ajax. I'm hitting the Servlet without
   issue and can return data in the response, however, the request
   parameters are always null; I cant seem to POST data. Where am I going
   wrong?

   var json = JSON2.stringify({name: test});

   $.ajax({
              type: POST,
              url: service,
              data: json,
              contentType: application/json; charset=utf-8,
              dataType: json,
              async: async,
              success: function(o) {
                   o = $.serviceHelper.jsonSerialize(o);
                     callback(o);
              },
              error: this.dataServiceError
          });

      protected void doPost(javax.servlet.http.HttpServletRequest
   request, javax.servlet.http.HttpServletResponse response) throws
   javax.servlet.ServletException, IOException {

          PrintWriter out = response.getWriter();
          response.setContentType(text/json);
          String json = gson.toJson(request.getParameter(name));
          out.println(json);

      }

   --
   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%2B
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 
  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.



Re: [appengine-java] Trying to use Ehcache 2.0.1 with web module

2010-05-04 Thread Jason (Google)
Hi Sergio. I'll try to test this out soon. If you haven't already, you may
want to post this in the Ehcache forums also since they can probably help
you debug the issue faster:

- Jason

On Mon, May 3, 2010 at 1:54 AM, Sergio Lopes slo...@gmail.com wrote:

 Hi everybody

 Ehcach announced recently their AppEngine support. I'm using version
 2.0.1 (latest stable release) with Ehcache Web Module. I'm using
 SimpleCachingHeadersPageCachingFilter to cache page results.

 When I run my application, I'm getting an AccessControlException
 because Ehcache Web is trying to do something nasty to the current
 Thread (of course, gae does not allow):

 java.security.AccessControlException: access denied
 (java.lang.RuntimePermission modifyThread)
at

 java.security.AccessControlContext.checkPermission(AccessControlContext.java:
 323)
at
 java.security.AccessController.checkPermission(AccessController.java:
 546)
at
 java.lang.SecurityManager.checkPermission(SecurityManager.java:532)
at com.google.appengine.tools.development.DevAppServerFactory
 $CustomSecurityManager.checkPermission(DevAppServerFactory.java:166)
at com.google.appengine.tools.development.DevAppServerFactory
 $CustomSecurityManager.checkAccess(DevAppServerFactory.java:203)
at java.lang.Thread.checkAccess(Thread.java:1287)
at java.lang.Thread.setName(Thread.java:1068)
at

 net.sf.ehcache.constructs.web.filter.CachingFilter.buildPageInfo(CachingFilter.java:
 240)
at

 net.sf.ehcache.constructs.web.filter.CachingFilter.doFilter(CachingFilter.java:
 185)
at
 net.sf.ehcache.constructs.web.filter.Filter.doFilter(Filter.java:86)
 

 Is there anyone here using Ehcache on GAE? And specifically, Ehcache
 Web Module?
 I read that ehcache filter implementation and it really seems to call
 things restricted by gae

 I followed the instructions found on Ehcache website:
  http://ehcache.org/documentation/googleappengine.html
  http://ehcache.org/documentation/web_caching.html

 Is Ehcache really GAE compatible?

 Tks
 Sérgio Lopes

 --
 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] Re: Serialization Error on GData Spreadhseet

2010-05-04 Thread Rudolf
Hello Ikai,

I have a mix of functions which read or write data from/to a
Spreadsheet;

I fail on both;

Best Regards
Rudolf

On 4 Mai, 11:06, Ikai L (Google) ika...@google.com wrote:
 Are you storing something in the session, such as an instance of the GData
 client?

 On Mon, May 3, 2010 at 7:20 PM, Rudolf rudolfstolz...@googlemail.comwrote:





  Hello,

  I am new on Google App Engine;

  I wrote some code which accesses a Google Spreadsheet through the
  provided GData Java API;

  everythings works well running in the Eclipse local Environment or
  running the code on a local Apache Tomcat Server;

  nevertheless, running the code on the Google App Engine (deployed
  through Elipse) fails with the following error:
  Error: Server Error
  The server encountered an error and could not complete your request.
  If the problem persists, please report your problem and mention this
  error message and the query that caused it.

  the App Engine log gives me the following information:
  Uncaught exception from servlet
  java.lang.RuntimeException: java.io.NotSerializableException:
  com.google.gdata.client.spreadsheet.SpreadsheetService
         at

  com.google.apphosting.runtime.jetty.SessionManager.serialize(SessionManager­.java:
  361)
         at

  com.google.apphosting.runtime.jetty.SessionManager.createEntityForSession(S­essionManager.java:
  341)
  ...

  Any idea what I am doing wrong;

  thank you in advance for your help;

  Best Regards
  Rudolf

  --
  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%2b­unsubscr...@googlegroups.com
  .
  For more options, visit this group at
 http://groups.google.com/group/google-appengine-java?hl=en.

 --
 Ikai Lan
 Developer Relations, Google App Engine
 Twitter:http://twitter.com/ikai
 Delicious:http://delicious.com/ikailan

 
 Google App Engine links:
 Blog:http://googleappengine.blogspot.com
 Twitter:http://twitter.com/app_engine
 Reddit:http://www.reddit.com/r/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 
 athttp://groups.google.com/group/google-appengine-java?hl=en.- Zitierten Text 
 ausblenden -

 - Zitierten Text anzeigen -

-- 
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: Problems enabling Second-level cache with JPA

2010-05-04 Thread datanucleus
And DataNucleus docs for v2.0, v2.1 don't mention GAE/J since GAE/J
doesn't work with them, and we've been given no timescales when it
will.
The DN v1.1 docs mention GAE/J, but we have absolutely no intention of
mentioning caveats to specifications necessary to run GAE/J - since we
see no major reason why the vast majority of JDO3 and JPA2 can't be
handled cleanly with a NoSQL datastore.

Can't help you with your issue since v1.1 is no longer supported,
except commercially

-- 
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: How to make BlobServlet send non-empty response?

2010-05-04 Thread Jaroslav Záruba
Or do you mean I should read the post data, send them to uploadUrl
using another request I create, and then write response to the
original one...?
That might probably work... :P

On May 4, 6:43 pm, Jaroslav Záruba jaroslav.zar...@gmail.com wrote:
 Can you be more specific please?
 (After redirecting request you can't write to its response.)

 Regards
   J. Záruba

 On May 4, 10:01 am, bimbo jones bimbojone...@gmail.com wrote:





  hi,

  You can redirect the upload servlet to another servlet that responds.

  2010/5/3 Jaroslav Záruba jaroslav.zar...@gmail.com

   I'm trying to use SWFUpload for uploading images in my application but
   either this particular component or Flash does not like empty
   responses.
   Is it possible somehow to get any content in the response-body from
   uploadUrl?

   Regards
    J. Záruba

   --
   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%2B
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 
  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.



Re: [appengine-java] Re: unable to use sdk 1.3.3.1

2010-05-04 Thread Wayne Fay
Read the whole stack trace (I cut out the important parts below). Way
down near the bottom you have a NoClassDefFoundError and
ClassNotFoundException that may be the actual source of your problems.
Also a RuntimeException that may be related.

Wayne

On Tue, May 4, 2010 at 8:07 AM, RockyWolf jamesisaa...@gmail.com wrote:
 I removed my eclipse ganymade, and installed eclipse galileo. Running
 app engine 1.3.3.1 now allows me to run my app, but I still get the
 previous
 java.net.ConnectException: Connection timed out: connect exception.



 On May 3, 3:40 pm, RockyWolf jamesisaa...@gmail.com wrote:
 Hi, I can't understand why my app which runs on 1.2.1 doesn't run on
 1.3.3.1 .

 I keep getting the following error message when I run my app:

 com.google.appengine.tools.info.RemoteVersionFactory getVersion
 INFO: Unable to 
 accesshttp://appengine.google.com/api/updatecheck?runtime=javarelease=1.3['1.0']
 java.net.ConnectException: Connection timed out: connect
         at java.net.PlainSocketImpl.socketConnect(Native Method)
         at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
         at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:
 195)

snip

 java.lang.RuntimeException: Unable to locate the App Engine agent.
 Please use dev_appserver, KickStart,  or set the jvm flag: -
 javaagent:sdk_root/lib/agent/appengine-agent.jar

snip

 Caused by: java.lang.NoClassDefFoundError: com/google/appengine/tools/
 development/agent/AppEngineDevAgent
         at
 com.google.appengine.tools.development.DevAppServerFactory.testAgentIsInsta­lled(DevAppServerFactory.java:
 98)
         ... 6 more
 Caused by: java.lang.ClassNotFoundException:
 com.google.appengine.tools.development.agent.AppEngineDevAgent
         at java.net.URLClassLoader$1.run(URLClassLoader.java:200)

-- 
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: one project access classes in another project in same account

2010-05-04 Thread Don Schwarz
Bruce, an application is the fundamental unit of isolation in App Engine.
 There are no guarantees that two applications will be available in the same
data center, let alone loaded onto the same servers.  Each application can
have more than one administrator, so it's unclear how any automated grouping
of applications based on their administrator list would work.

Is there a reason you can't just deploy all of the code you need as a single
application?

On Tue, May 4, 2010 at 1:08 PM, bhomass bhom...@gmail.com wrote:

 Patrick

 I don't know if you are personally involved with the restriction
 policy, but I am wondering why is this not allowed? these are apps
 belonging to the same account. there should be no security concerns.
 why this extra restriction?

 Bruce

 On May 4, 12:55 am, Patrick Cornelißen corne...@pcornelissen.de
 wrote:
  Hi!
 
  2010/5/4bhomassbhom...@gmail.com:
 
   using tomcat, I have been able to have one central web app access
   classes from surrounding web apps by simply using URLClassLoader based
   on the file path of the class folder.
 
   is there a way to do the same once I deploy to GAE?
 
  I don't think that this is allowed, as different GAE apps are not
  allowed to act as one app and this is really going into that
  direction.
 
  So I think it's technically possible, but not allowed.
 
  --
  Mit freundlichen Grüßen,  // Bye,
Patrick Cornelißen
   http://www.openprojectguide.org
   http://www.pcornelissen.dehttp://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.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] JSP code debug: Compiled JSP location in local environment

2010-05-04 Thread bobo
Hi

I got following error in my local enviroment of Google App Eng with
Eclipse plugin:
at org.apache.jsp.scoreresult_jsp._jspService(scoreresult_jsp.java:
161)

I would like to see the code on line 161 of compiled scoreresult.jsp
file. But I can't find out the location of it. Anyone can tell me
where the default folder locatoin for compiled .jsp files and also how
you debug jsp code when error is on .jsp but no error on your .java
file?

-- 
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: Serialization Error on GData Spreadhseet

2010-05-04 Thread Rudolf
Hello,

I fixed above mentioned problem by a more accurate design of my
Servlets; the code is now executing on GAE;

nevertheless, now I face another problem; the data calculation for the
response on the GAE takes more then 30 seconds; at about 30 seconds
GAE kills my request;

I found a lot of threads in the Web on this issue, but not the
information I have looked for;

is it possible to tell GAE, that a request takes more then 30
seconds?

it is difficult to split my application into different requests, since
within one request I have to get the data of a Spreadsheet (more than
6000 data records) for the calculation of a result; this event will
eventually take more then 30 seconds;

any idea how I can handle this;

thanks in advance for your help;

Best Regards
Rudolf

On 4 Mai, 18:10, Rudolf rudolfstolz...@googlemail.com wrote:
 Hello Ikai,

 I have a mix of functions which read or write data from/to a
 Spreadsheet;

 I fail on both;

 Best Regards
 Rudolf

 On 4 Mai, 11:06, Ikai L (Google) ika...@google.com wrote:





  Are you storing something in the session, such as an instance of the GData
  client?

  On Mon, May 3, 2010 at 7:20 PM, Rudolf rudolfstolz...@googlemail.comwrote:

   Hello,

   I am new on Google App Engine;

   I wrote some code which accesses a Google Spreadsheet through the
   provided GData Java API;

   everythings works well running in the Eclipse local Environment or
   running the code on a local Apache Tomcat Server;

   nevertheless, running the code on the Google App Engine (deployed
   through Elipse) fails with the following error:
   Error: Server Error
   The server encountered an error and could not complete your request.
   If the problem persists, please report your problem and mention this
   error message and the query that caused it.

   the App Engine log gives me the following information:
   Uncaught exception from servlet
   java.lang.RuntimeException: java.io.NotSerializableException:
   com.google.gdata.client.spreadsheet.SpreadsheetService
          at

   com.google.apphosting.runtime.jetty.SessionManager.serialize(SessionManager­­.java:
   361)
          at

   com.google.apphosting.runtime.jetty.SessionManager.createEntityForSession(S­­essionManager.java:
   341)
   ...

   Any idea what I am doing wrong;

   thank you in advance for your help;

   Best Regards
   Rudolf

   --
   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%2b­­unsubscr...@googlegroups.com
   .
   For more options, visit this group at
  http://groups.google.com/group/google-appengine-java?hl=en.

  --
  Ikai Lan
  Developer Relations, Google App Engine
  Twitter:http://twitter.com/ikai
  Delicious:http://delicious.com/ikailan

  
  Google App Engine links:
  Blog:http://googleappengine.blogspot.com
  Twitter:http://twitter.com/app_engine
  Reddit:http://www.reddit.com/r/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 
  athttp://groups.google.com/group/google-appengine-java?hl=en.-Zitierten 
  Text ausblenden -

  - Zitierten Text anzeigen -

 --
 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.- Zitierten Text 
 ausblenden -

 - Zitierten Text anzeigen -

-- 
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: slow responses for query

2010-05-04 Thread Philip Tucker
On May 4, 3:28 am, Ikai L (Google) ika...@google.com wrote:
 Query performance is generally a function of how many objects have to be
 returned in the simple case, which seems to be what you are doing here. How
 many PlayerGameStates exist per User?

No more than 10 so far. Like I said, it was only 5 in this case.

 Are PlayerGameStates child entities of a User?

No. They contain a userKey, which is the field on which I'm querying
them.

 The reason I mentioned denormalizing is because the concept of
 normalization doesn't make as much sense with App Engine's datastore. We
 don't provide referential integrity, for instance, and transactions exist
 around entity groups, not globally. You don't pay a penalty for storing data
 that is sparse - some User entities can be huge, some can be tiny. You
 should optimize for reads. Doing multiple writes and the risk of data
 getting out of sync can suck, but as long as it is recoverable you should be
 okay. Contrast the performance of the query above with storing
 PlayerGameStates inside User. You'd do this:

But then I'd have to run a separate query to fetch the game. Unless I
duplicate the game state and move all those fields into
PlayerGameState, which perhaps is what you're suggesting. But then I'd
have to fetch both users every time, right (to update the duplicate
game state), which means every player needs to contain the userKey of
everyone they're playing.

Most of my reads are by gameKey. There's only one case where I'm
fetching all the games for a user. I don't really need this case to be
optimized: 2-3 seconds would be acceptable. 80-90% of the time it's ~1
second. But these occasional 10-20 second fetches are crazy.

-- 
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: Problems enabling Second-level cache with JPA

2010-05-04 Thread Sérgio Lopes
Thanks for the reply.

And about citing GAE caveats: maybe that's a good idea to promote your
product (I can speak for myself: I never heard about datanucleus before GAE,
and it seems like a nice product).

About 1.1 support: although there is no more support, the current GAE
version + datanucleus-cache-1.1 should have worked?

Thanks in advance and congratulations for the product

On Tue, May 4, 2010 at 13:32, datanucleus andy_jeffer...@yahoo.com wrote:

 And DataNucleus docs for v2.0, v2.1 don't mention GAE/J since GAE/J
 doesn't work with them, and we've been given no timescales when it
 will.
 The DN v1.1 docs mention GAE/J, but we have absolutely no intention of
 mentioning caveats to specifications necessary to run GAE/J - since we
 see no major reason why the vast majority of JDO3 and JPA2 can't be
 handled cleanly with a NoSQL datastore.

 Can't help you with your issue since v1.1 is no longer supported,
 except commercially

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



Re: [appengine-java] Trying to use Ehcache 2.0.1 with web module

2010-05-04 Thread Sérgio Lopes
Hi Jason

If you have any news please tell us.
As you said, I cross-posted this question in Ehcache forum too:

http://forums.terracotta.org/forums/posts/list/0/3600.page

Sérgio
http://www.caelum.com.br

On Tue, May 4, 2010 at 13:08, Jason (Google) apija...@google.com wrote:

 Hi Sergio. I'll try to test this out soon. If you haven't already, you may
 want to post this in the Ehcache forums also since they can probably help
 you debug the issue faster:

 - Jason

 On Mon, May 3, 2010 at 1:54 AM, Sergio Lopes slo...@gmail.com wrote:

 Hi everybody

 Ehcach announced recently their AppEngine support. I'm using version
 2.0.1 (latest stable release) with Ehcache Web Module. I'm using
 SimpleCachingHeadersPageCachingFilter to cache page results.

 When I run my application, I'm getting an AccessControlException
 because Ehcache Web is trying to do something nasty to the current
 Thread (of course, gae does not allow):

 java.security.AccessControlException: access denied
 (java.lang.RuntimePermission modifyThread)
at

 java.security.AccessControlContext.checkPermission(AccessControlContext.java:
 323)
at
 java.security.AccessController.checkPermission(AccessController.java:
 546)
at
 java.lang.SecurityManager.checkPermission(SecurityManager.java:532)
at com.google.appengine.tools.development.DevAppServerFactory
 $CustomSecurityManager.checkPermission(DevAppServerFactory.java:166)
at com.google.appengine.tools.development.DevAppServerFactory
 $CustomSecurityManager.checkAccess(DevAppServerFactory.java:203)
at java.lang.Thread.checkAccess(Thread.java:1287)
at java.lang.Thread.setName(Thread.java:1068)
at

 net.sf.ehcache.constructs.web.filter.CachingFilter.buildPageInfo(CachingFilter.java:
 240)
at

 net.sf.ehcache.constructs.web.filter.CachingFilter.doFilter(CachingFilter.java:
 185)
at
 net.sf.ehcache.constructs.web.filter.Filter.doFilter(Filter.java:86)
 

 Is there anyone here using Ehcache on GAE? And specifically, Ehcache
 Web Module?
 I read that ehcache filter implementation and it really seems to call
 things restricted by gae

 I followed the instructions found on Ehcache website:
  http://ehcache.org/documentation/googleappengine.html
  http://ehcache.org/documentation/web_caching.html

 Is Ehcache really GAE compatible?

 Tks
 Sérgio Lopes

 --
 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.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] Re: SimpleDS 1.0_RC1 is out

2010-05-04 Thread Sergio Lopes
Great news!
I'm currently having some problems with second level cache and JPA, so
a nice alternative like SimpleDS is a good idea.
Just one question: does SimpleDS support query caching too? I've some
very popular queries and want to cache their results in a 2nd level
cache (not only its entities)

Thanks and congratulation for the release

Sérgio Lopes
http://www.caelum.com.br

On May 4, 6:31 am, Nacho Coloma icol...@gmail.com wrote:
 We are really excited with this release, which is the first feature-
 complete release of SimpleDS. Lots of things have been included in so
 little time.

 Getting up-to-date with AppEngine
 

 It's hard to keep up the pace with these guys. This release includes:

 * Unindexed attributes.
 * Cursors support.
 * IN and != clauses.

 Cache
 =

 We have included a great Level 1 and Level 2 cache [1]. If you come
 from JDO/JPA, you may already know how it works:

 * Level 1 cache: This is basically a Map bound to the current thread.
 Until the end of the current request, any get() invocation will check
 this cache first. If a match is found, no invocation will be
 propagated to GAE.
 * Level 2 cache: Datastore entities are also stored in memcache, which
 is a second chance to get a positive match.

 Cacheable entities must be marked with @Cacheable, with an optional
 expiration time. This feature will work with single and batch get(),
 and the cache entries are updated with put() and delete()
 invocations.

 // Invoke memcache or the datastore
 ListMyData data = entityManager.get(key1, key2, key3);

 // this does not invoke anything (resolved by the Level 1 cache)
 MyData d2 = entityManager.get(key1);

 Functions
 

 We are going extremely functional these days [2]. This release
 includes a package with functions to transform collections and
 PagedList instances, which can be combined with batch get() to get
 even better performance results. This is a simple example, equivalent
 to a common situation with relationships:

 // n + 1 requests to the datastore
 ListMyData data = entityManager.find(query);
 CollectionParent parents =
 Lists.newArrayListwithCapacity(data.size());
 for (MyData d : data) {
   parents.add(entityManager.get(d.getKey().getParent());

 }

 // Transformations: 2 requests
 ListMyData data = entityManager.find(query);
 CollectionKey parentKeys = Collections2.transform(data, new
 EntityToParentKeyFunction(MyData.class));
 CollectionParent parents = entityManager.get(parentKeys);

 That's all it takes to get all entities and their parents, and store
 them in the Level 1 cache so any request by PK will not hit memcache
 or the datastore. This release includes functions to retrieve parent
 and foreign keys, and also works with PagedList. We have taken two
 real-world snapshots with just this optimization (transformation +
 cacheable), applied to a single loop:

 Before:http://www.flickr.com/photos/koliseocom/4575062969/sizes/l/
 After:http://www.flickr.com/photos/koliseocom/4575696456/sizes/o

 Notice that requests before are targeted to the datastore, while
 most of the after are memcache requests.

 Background tasks
 ==

 I know that background tasks [3] are in the roadmap for AppEngine, but
 we needed these today. This started as an exercise to upgrade the
 datastore schema (add properties, delete entities, etc) and ended up
 as a full reusable implementation of tasks that I expect to deprecate
 once that AppEngine includes its own, probably better, implementation.

 Background tasks require adding a servlet to web.xml (and optionally
 appengine-web.xml as an admin-console entry) and configuring the tasks
 on application start using plain Java. Tasks can be invoked directly
 by cron triggers, queues or by POST requests.

 public class WriteBehindCacheTask extends IterableTaskMyClass {

         protected WriteBehindCacheTask() {
                 super(my-task-id);
         }

         @Override
         protected SimpleQuery createQuery(TaskRequest request) {
                 return entityManager.createQuery(MyClass.class);
         }

         @Override
         protected void process(MyClass entity, TaskRequest request) {
                 // ...modify entity...
                 entityManager.put(entity);
         }

 }

 Query cursors and execution deferral will be done transparently (no
 need to limit or handle cursors). There are some implementation
 superclasses depending on what you need to do, and some of them just
 use the raw AppEngine datastore and don't even require SimpleDS to
 work.

 This is the first feature-complete release of SimpleDS. Next on the
 roadmap: cached queries and we may be revisiting relations.

 As always, all kind of feedback is welcome.

 Nacho.

 [1]http://code.google.com/p/simpleds/wiki/Cache
 [2]http://code.google.com/p/simpleds/wiki/Functions
 [3]http://code.google.com/p/simpleds/wiki/BackgroundTasks

 --
 You received this message because you are subscribed to the Google 

[appengine-java] Re: Trying to use Ehcache 2.0.1 with web module

2010-05-04 Thread freak3y3
Hi Sérgio ,

fyi: these existing issues may be releated to your issue:

http://forums.terracotta.org/forums/posts/list/15/2718.page
https://jira.terracotta.org/jira/browse/EHC-617

regards,
Evan

On May 4, 12:39 pm, Sérgio Lopes slo...@gmail.com wrote:
 Hi Jason

 If you have any news please tell us.
 As you said, I cross-posted this question in Ehcache forum too:

 http://forums.terracotta.org/forums/posts/list/0/3600.page

 Sérgiohttp://www.caelum.com.br





 On Tue, May 4, 2010 at 13:08, Jason (Google) apija...@google.com wrote:
  Hi Sergio. I'll try to test this out soon. If you haven't already, you may
  want to post this in the Ehcache forums also since they can probably help
  you debug the issue faster:

  - Jason

  On Mon, May 3, 2010 at 1:54 AM, Sergio Lopes slo...@gmail.com wrote:

  Hi everybody

  Ehcach announced recently their AppEngine support. I'm using version
  2.0.1 (latest stable release) with Ehcache Web Module. I'm using
  SimpleCachingHeadersPageCachingFilter to cache page results.

  When I run my application, I'm getting an AccessControlException
  because Ehcache Web is trying to do something nasty to the current
  Thread (of course, gae does not allow):

  java.security.AccessControlException: access denied
  (java.lang.RuntimePermission modifyThread)
         at

  java.security.AccessControlContext.checkPermission(AccessControlContext.jav­a:
  323)
         at
  java.security.AccessController.checkPermission(AccessController.java:
  546)
         at
  java.lang.SecurityManager.checkPermission(SecurityManager.java:532)
         at com.google.appengine.tools.development.DevAppServerFactory
  $CustomSecurityManager.checkPermission(DevAppServerFactory.java:166)
         at com.google.appengine.tools.development.DevAppServerFactory
  $CustomSecurityManager.checkAccess(DevAppServerFactory.java:203)
         at java.lang.Thread.checkAccess(Thread.java:1287)
         at java.lang.Thread.setName(Thread.java:1068)
         at

  net.sf.ehcache.constructs.web.filter.CachingFilter.buildPageInfo(CachingFil­ter.java:
  240)
         at

  net.sf.ehcache.constructs.web.filter.CachingFilter.doFilter(CachingFilter.j­ava:
  185)
         at
  net.sf.ehcache.constructs.web.filter.Filter.doFilter(Filter.java:86)
  

  Is there anyone here using Ehcache on GAE? And specifically, Ehcache
  Web Module?
  I read that ehcache filter implementation and it really seems to call
  things restricted by gae

  I followed the instructions found on Ehcache website:
   http://ehcache.org/documentation/googleappengine.html
   http://ehcache.org/documentation/web_caching.html

  Is Ehcache really GAE compatible?

  Tks
  Sérgio Lopes

  --
  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%2b­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.comgoogle-appengine-java%2b­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 
 athttp://groups.google.com/group/google-appengine-java?hl=en.- Hide quoted 
 text -

 - Show quoted text -

-- 
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: PdfBox text extraction GAE

2010-05-04 Thread kldaniels
This is interesting that you got this to work.

I have been trying to work with PDFBox with GAE as well, and have not
been able to get very far.  I am attempting to open a pdf document as
follows but only get a IOException:

 URL url = new URL(http://www.pbs.org/newshour/extra/teachers/
lessonplans/media/clock_gettysburg_9-3.pdf);
 PDDocument doc = PDDocument.load(url);
 PDDocumentInformation info = doc.getDocumentInformation();

I am not sure what I am doing wrong.

Ken

On Apr 20, 1:00 pm, Fabrizio fht...@gmail.com wrote:
 If anyone is interested...

 PdfBoxtext extration  GAE
 How to do text extraction from pdf files usingPdfBoxon Google App
 Enginehttp://fhtino.blogspot.com/2010/04/pdfbox-text-extration-gae.html

     fabrizio

 --
 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] How to detect GAE is in maintenance?

2010-05-04 Thread Jerome
I would like my app to inform the visitor we are in maintenance, such
as it does not let them do operations that will fail when we try to
write in the Data Store.

Last week, I implemented the code snipped as documented at the bottom
of this page:
http://code.google.com/appengine/docs/java/howto/maintenance.html

public static boolean isGAEDowntime() {
MemcacheService ms = 
MemcacheServiceFactory.getMemcacheService();
ms.setErrorHandler(new StrictErrorHandler());

try {
ms.put(test, test);
} catch 
(com.google.appengine.api.memcache.MemcacheServiceException
e) {
return true;
}
return false;
}

But, during the downtime, this method was still return false.

What is the best option to figure out we are in the downtime period?

Jerome

-- 
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] JSP code debug: Compiled JSP location in local environment

2010-05-04 Thread m seleron
Hi,

The following threads might be useful though it depends on the
operation system that you are using.

http://groups.google.com/group/google-appengine-java/browse_thread/thread/e63281b3e3d1b05/9b12a70f5172c6c1

Hope some of this helps.
thanks.

 Hi

 I got following error in my local enviroment of Google App Eng with
 Eclipse plugin:
 at org.apache.jsp.scoreresult_jsp._jspService(scoreresult_jsp.java:
 161)

 I would like to see the code on line 161 of compiled scoreresult.jsp
 file. But I can't find out the location of it. Anyone can tell me
 where the default folder locatoin for compiled .jsp files and also how
 you debug jsp code when error is on .jsp but no error on your .java
 file?

 --
 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] How to Truncate a Datastore?

2010-05-04 Thread OdysseyFX
I recently imported a bunch of data into my datastore and realized
there was a critical flaw that makes me need to re-import.  What is
the best way to essentially perform a truncation of the datastore?

-- 
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] How to fix missing jars problem?

2010-05-04 Thread Peter
Folks,

I was using App Engine 1.3.2 with Eclipse so far. Today, I decided to
use the newer one that is available. I changed the SDK version setting
in Preferences--Google--App Engine from 1.3.2 to 1.3.3. After doing
this, I now see 3 warnings in my project:

The App Engine SDK JAR appengine-api-labs-1.3.3.jar is missing in the
WEB-INF/lib directory
The App Engine SDK JAR appengine-jsr107cache-1.3.3.jar is missing in
the WEB-INF/lib directory
The App Engine SDK JAR appengine-api-1.0-sdk-1.3.3.jar is missing in
the WEB-INF/lib directory

Can someone please tell me how to get rid of these warnings?

Thank you in advance for your help.

Regards,
Peter

-- 
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] Why does UserService is so slow ?

2010-05-04 Thread Christian Goudreau
All is in the title...

Any idea how to cut down that loading time the first time ?

Christian

-- 
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] Session and AppEngine

2010-05-04 Thread Christian Goudreau
Hummm I got a weird issue

I added to my appengine-web.xml this line :
sessions-enabledtrue/sessions-enabled

But no JSESSIONID cookie is created.

Anyway Idea why ?

Christian

-- 
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] Session and AppEngine

2010-05-04 Thread yjun hu
 hi, are u using java ? if yes, the object you push into session must
implements java.io.Serializable .
  you can follow this blog for more info:
http://www.hapeblog.com/blog.shtml?id=7

On Wed, May 5, 2010 at 10:54 AM, Christian Goudreau 
goudreau.christ...@gmail.com wrote:

 Hummm I got a weird issue

 I added to my appengine-web.xml this line :
 sessions-enabledtrue/sessions-enabled

 But no JSESSIONID cookie is created.

 Anyway Idea why ?

 Christian

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




-- 
dream or truth

-- 
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] URL Fetch truncates incoming response - To what size?

2010-05-04 Thread Didier Durand
Hi,

Page 
http://code.google.com/appengine/docs/java/urlfetch/usingjavanet.html#Features_of_the_Low_level_API

says:  The URL Fetch service limits the size of the data for an
outgoing request, and for an incoming response. When using the
java.net API, data larger than the limit is silently truncated

a) Can somebody please tell what the size limit before this truncation
happens ?
b) Better even, if there a way to read this limit somewhere through
some method so that my program remains valid if current limit ever
changes ?

regards
didier

-- 
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] 500 Error Caused by: java.lang.NoSuchMethodException: org.codehaus.groovy.runtime.dgm$692.init()

2010-05-04 Thread Daisy
Hi, there:

After updated to a new  version, which worked well locally, I started
to get the following Exception.  Any help will be greatly appreciated.

   1.
  05-04 10:23PM 01.436 / 500 5070ms 4160cpu_ms 0kb Mozilla/5.0
(Windows; U; Windows NT 5.1; en-US; rv:1.9.2.3) Gecko/20100401 Firefox/
3.6.3 (.NET CLR 3.5.30729),gzip(gfe)
  See details

  99.229.111.64 - - [04/May/2010:22:23:06 -0700] GET / HTTP/1.1
500 0 - Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2.3)
Gecko/20100401 Firefox/3.6.3 (.NET CLR 3.5.30729),gzip(gfe)
0-1.latest.hoogos2010.appspot.com

   2.
  C 05-04 10:23PM 06.460

  Uncaught exception from servlet
  java.lang.ExceptionInInitializerError
at
org.codehaus.groovy.runtime.InvokerHelper.clinit(InvokerHelper.java:
49)
at
org.codehaus.groovy.runtime.ScriptBytecodeAdapter.createList(ScriptBytecodeAdapter.java:
610)
at
groovyx.gaelyk.routes.RoutesFilter.init(RoutesFilter.groovy:48)
at
sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at
sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
at
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown
Source)
at java.lang.reflect.Constructor.newInstance(Unknown Source)
at java.lang.Class.newInstance0(Unknown Source)
at java.lang.Class.newInstance(Unknown Source)
at org.mortbay.jetty.servlet.Holder.newInstance(Holder.java:
153)
at
org.mortbay.jetty.servlet.FilterHolder.doStart(FilterHolder.java:92)
at
org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:
50)
at
org.mortbay.jetty.servlet.ServletHandler.initialize(ServletHandler.java:
662)
at org.mortbay.jetty.servlet.Context.startContext(Context.java:
140)
at
org.mortbay.jetty.webapp.WebAppContext.startContext(WebAppContext.java:
1250)
at
org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:
517)
at
org.mortbay.jetty.webapp.WebAppContext.doStart(WebAppContext.java:467)
at
org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:
50)
at
com.google.apphosting.runtime.jetty.AppVersionHandlerMap.createHandler(AppVersionHandlerMap.java:
191)
at
com.google.apphosting.runtime.jetty.AppVersionHandlerMap.getHandler(AppVersionHandlerMap.java:
168)
at
com.google.apphosting.runtime.jetty.JettyServletEngineAdapter.serviceRequest(JettyServletEngineAdapter.java:
123)
at
com.google.apphosting.runtime.JavaRuntime.handleRequest(JavaRuntime.java:
243)
at com.google.apphosting.base.RuntimePb$EvaluationRuntime
$6.handleBlockingRequest(RuntimePb.java:5838)
at com.google.apphosting.base.RuntimePb$EvaluationRuntime
$6.handleBlockingRequest(RuntimePb.java:5836)
at
com.google.net.rpc.impl.BlockingApplicationHandler.handleRequest(BlockingApplicationHandler.java:
24)
at
com.google.net.rpc.impl.RpcUtil.runRpcInApplication(RpcUtil.java:398)
at com.google.net.rpc.impl.Server$2.run(Server.java:852)
at
com.google.tracing.LocalTraceSpanRunnable.run(LocalTraceSpanRunnable.java:
56)
at
com.google.tracing.LocalTraceSpanBuilder.internalContinueSpan(LocalTraceSpanBuilder.java:
576)
at com.google.net.rpc.impl.Server.startRpc(Server.java:807)
at com.google.net.rpc.impl.Server.processRequest(Server.java:
369)
at
com.google.net.rpc.impl.ServerConnection.messageReceived(ServerConnection.java:
442)
at
com.google.net.rpc.impl.RpcConnection.parseMessages(RpcConnection.java:
319)
at
com.google.net.rpc.impl.RpcConnection.dataReceived(RpcConnection.java:
290)
at
com.google.net.async.Connection.handleReadEvent(Connection.java:474)
at
com.google.net.async.EventDispatcher.processNetworkEvents(EventDispatcher.java:
831)
at
com.google.net.async.EventDispatcher.internalLoop(EventDispatcher.java:
207)
at
com.google.net.async.EventDispatcher.loop(EventDispatcher.java:103)
at
com.google.net.rpc.RpcService.runUntilServerShutdown(RpcService.java:
251)
at com.google.apphosting.runtime.JavaRuntime
$RpcRunnable.run(JavaRuntime.java:404)
at java.lang.Thread.run(Unknown Source)
  Caused by: java.lang.NoSuchMethodException:
org.codehaus.groovy.runtime.dgm$692.init()
at
com.google.appengine.runtime.Request.process-97a2c792a689dcfb(Request.java)
at java.lang.Class.getConstructor0(Unknown Source)
at java.lang.Class.getDeclaredConstructor(Unknown Source)
at java.lang.Class.newInstance(Class.java:27)
at
org.codehaus.groovy.runtime.metaclass.MetaClassRegistryImpl.createMetaMethodFromClass(MetaClassRegistryImpl.java:
180)
at
org.codehaus.groovy.runtime.metaclass.MetaClassRegistryImpl.registerMethods(MetaClassRegistryImpl.java:
142)
at
org.codehaus.groovy.runtime.metaclass.MetaClassRegistryImpl.init(MetaClassRegistryImpl.java:
81)
at