{"version":"1.0","provider_name":"GOODmood","provider_url":"https:\/\/wp.goodmood.it","author_name":"goodadmin","author_url":"https:\/\/wp.goodmood.it\/author\/goodadmin\/","title":"Corso di programmazione Android. Livello 15 - GOODmood","type":"rich","width":600,"height":338,"html":"<blockquote class=\"wp-embedded-content\" data-secret=\"YgIPeMHTC5\"><a href=\"https:\/\/wp.goodmood.it\/prodotto\/corso-di-programmazione-android-livello-15\/\">Corso di programmazione Android. Livello 15<\/a><\/blockquote><iframe sandbox=\"allow-scripts\" security=\"restricted\" src=\"https:\/\/wp.goodmood.it\/prodotto\/corso-di-programmazione-android-livello-15\/embed\/#?secret=YgIPeMHTC5\" width=\"600\" height=\"338\" title=\"&#8220;Corso di programmazione Android. Livello 15&#8221; &#8212; GOODmood\" data-secret=\"YgIPeMHTC5\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\" class=\"wp-embedded-content\"><\/iframe><script>\n\/*! This file is auto-generated *\/\n!function(d,l){\"use strict\";l.querySelector&&d.addEventListener&&\"undefined\"!=typeof URL&&(d.wp=d.wp||{},d.wp.receiveEmbedMessage||(d.wp.receiveEmbedMessage=function(e){var t=e.data;if((t||t.secret||t.message||t.value)&&!\/[^a-zA-Z0-9]\/.test(t.secret)){for(var s,r,n,a=l.querySelectorAll('iframe[data-secret=\"'+t.secret+'\"]'),o=l.querySelectorAll('blockquote[data-secret=\"'+t.secret+'\"]'),c=new RegExp(\"^https?:$\",\"i\"),i=0;i<o.length;i++)o[i].style.display=\"none\";for(i=0;i<a.length;i++)s=a[i],e.source===s.contentWindow&&(s.removeAttribute(\"style\"),\"height\"===t.message?(1e3<(r=parseInt(t.value,10))?r=1e3:~~r<200&&(r=200),s.height=r):\"link\"===t.message&&(r=new URL(s.getAttribute(\"src\")),n=new URL(t.value),c.test(n.protocol))&&n.host===r.host&&l.activeElement===s&&(d.top.location.href=t.value))}},d.addEventListener(\"message\",d.wp.receiveEmbedMessage,!1),l.addEventListener(\"DOMContentLoaded\",function(){for(var e,t,s=l.querySelectorAll(\"iframe.wp-embedded-content\"),r=0;r<s.length;r++)(t=(e=s[r]).getAttribute(\"data-secret\"))||(t=Math.random().toString(36).substring(2,12),e.src+=\"#?secret=\"+t,e.setAttribute(\"data-secret\",t)),e.contentWindow.postMessage({message:\"ready\",secret:t},\"*\")},!1)))}(window,document);\n\/\/# sourceURL=https:\/\/wp.goodmood.it\/wp-includes\/js\/wp-embed.min.js\n<\/script>\n","thumbnail_url":"https:\/\/ddnnxx552xfqm.cloudfront.net\/assets\/uploads\/2014\/09\/android15_ebo.jpg","thumbnail_width":600,"thumbnail_height":800,"description":"Google App Engine: JSP, persistenza e Objectify - In questo quindicesimo e conclusivo volume entreremo pi\u00f9 nel dettaglio del mondo di Google App Engine. La trattazione si comporr\u00e0 di due ampie sezioni in cui approfondiremo la conoscenza di GAE, introducendo nuovi concetti che metteremo immediatamente messo in pratica. Nella prima parte realizzeremo un\u2019applicazione server piuttosto articolata con numerose Servlet e classi di supporto. Passeremo alla creazione di un semplice servizio di accesso alla nostra applicazione tramite l\u2019utilizzo delle HTTPSession e dei filtri. Installeremo e useremo Objectify, creando una classe Entity e registrandola tramite una comoda classe di supporto. Vedremo come sia semplice operare sul database con Objectify salvando, caricando e cancellando nuove entit\u00e0. Impareremo inoltre a fornire risposte servlet in formato JSON per le nostre applicazioni client. Pubblicheremo quindi online la nostra applicazione."}