NullPointerException при парсинге ошибки в CancelPreapprovalResponse в PayPal X GAE Toolkit

Вообще говоря и отмена preapproval платежа не работает, но это другой вопрос, а вот при попытке распарсить сообщение об ошибке библиотека выкидывает NullPointerException. Происходит это потому, что для массива, куда складываются сообщения, не выделена память. На трекер запостил, но пока ещё не добавили в репозиторий — ловите патч. 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051 Index: src/com/paypal/adaptive/api/responses/CancelPreapprovalResponse.java =================================================================== — src/com/paypal/adaptive/api/responses/CancelPreapprovalResponse.java    (revision […]

Google App Engine и индексы

В случае, если при запросе у вас используется несколько условий, то GAE требует наличия индексов, другими словами, вот такой вот запрос отработает без индексов: 1SELECT * FROM HyperLink WHERE param1 == 1 А вот такой потребует создания индекса: 1SELECT * FROM HyperLink WHERE param1 == 1 && param2 == 2 Если вы программируете на Java, […]

GAE и Java

Google App Engine и Java это вообще ад и погибель. Тогда как с питоном работать просто и удобно, здесь как по граблям идёшь. Постоянно какие-то глюки, которые или не документированы, или важная информация засунута настолько глубоко, что ищется только после получаса настойчивого гугления. Поэтому, если у вас будет выбор на чём начинать проект для GAE. […]

Google App Engine и хранение объектов в сессии

В GAE бывает довольно удобно хранить объекты в текущей сессии пользователя. Например, некоторый класс, который отвечает за параметры текущего пользователя. Пусть он называется Account. 12345678910@PersistenceCapable(identityType = IdentityType.APPLICATION) public class Account {     @PrimaryKey     @Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)     private Key key;     @Persistent private String email;         // […]