DevFest'te Çağatay Çivici'yi dinledikten sonra bir gaza gelip biraz uğraşmak istedim. Yaptıklarımın da sadece kendi bilgisayarımda çalışmasın diye düşündüm ve daldım Google App Engine'e :)
NetBeans, hem Google App Engine hem PrimeFaces kullanmak için ciddi bir kolaylık sağlıyor. (Bu da DevFest'in etkisi olsa gerek üzerimde) Neyse böyle şeylere başlarken en fazla zorluk çekilen nokta konfigürasyonu sağlamak, ki benim de öyle oldu. Sonunda çalıştırmayı başardım, ve bunu da paylaşmak istedim.
Dosya yapısı şu şekilde oluştu:
appengine-web.xml:
<?xml version="1.0" encoding="utf-8"?>
<appengine-web-app xmlns="http://appengine.google.com/ns/1.0">
<application>excellent-shard-787</application>
<version>${appengine.app.version}</version>
<threadsafe>true</threadsafe>
<sessions-enabled>true</sessions-enabled>
<static-files>
<exclude path="/**.xhtml" />
</static-files>
<system-properties>
<property name="java.util.logging.config.file" value="WEB-INF/logging.properties"/>
</system-properties>
</appengine-web-app>
faces-config.xml:
<?xml version='1.0' encoding='UTF-8'?>web.xml:
<!DOCTYPE faces-config PUBLIC
"-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.1//EN"
"http://java.sun.com/dtd/web-facesconfig_1_1.dtd">
<faces-config
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-facesconfig_2_0.xsd"
version="2.0">
<application/>
</faces-config>
<?xml version="1.0" encoding="UTF-8"?>Yararlandığım kaynaklar:
<web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<display-name>JavaServerFaces</display-name>
<!-- GAE 1.6.3 cannot handle server side (JSF default) state management. -->
<context-param>
<param-name>javax.faces.STATE_SAVING_METHOD</param-name>
<param-value>client</param-value>
</context-param>
<!-- Change to "Production" when you are ready to deploy -->
<context-param>
<param-name>javax.faces.PROJECT_STAGE</param-name>
<param-value>Development</param-value>
</context-param>
<!-- Welcome page -->
<welcome-file-list>
<welcome-file>index.xhtml</welcome-file>
</welcome-file-list>
<!-- JSF mapping -->
<servlet>
<servlet-name>Faces Servlet</servlet-name>
<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<!-- Map these files with JSF -->
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>/faces/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>*.jsf</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>*.faces</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>*.xhtml</url-pattern>
</servlet-mapping>
</web-app>
http://www.mkyong.com/google-app-engine/google-app-engine-jsf-2-example/
stackoverflow.com/questions/8409336/java-lang-nullpointerexception-at-com-sun-faces-context-flash-elflash-getflash
Hiç yorum yok:
Yorum Gönder