Revision: 181
Author:
daniels...@gmail.com
Date: Fri Jun 11 12:55:51 2010
Log: initial import.
http://code.google.com/p/jddaniels/source/detail?r=181
Added:
/trunk/TestDrawing/.classpath
/trunk/TestDrawing/.project
/trunk/TestDrawing/.settings
/trunk/TestDrawing/.settings/com.google.appengine.eclipse.core.prefs
/trunk/TestDrawing/.settings/com.google.gdt.eclipse.core.prefs
/trunk/TestDrawing/.settings/com.google.gwt.eclipse.core.prefs
/trunk/TestDrawing/src
/trunk/TestDrawing/src/META-INF
/trunk/TestDrawing/src/META-INF/jdoconfig.xml
/trunk/TestDrawing/src/log4j.properties
/trunk/TestDrawing/src/net
/trunk/TestDrawing/src/net/ddaniels
/trunk/TestDrawing/src/net/ddaniels/GetDrawingServlet.java
/trunk/TestDrawing/src/net/ddaniels/SubmitDrawingServlet.java
/trunk/TestDrawing/src/net/ddaniels/TestDrawingServlet.java
/trunk/TestDrawing/src/net/ddaniels/drawing
/trunk/TestDrawing/src/net/ddaniels/drawing/DrawingObject.java
/trunk/TestDrawing/src/net/ddaniels/persistence
/trunk/TestDrawing/src/net/ddaniels/persistence/PMF.java
/trunk/TestDrawing/war
/trunk/TestDrawing/war/WEB-INF
/trunk/TestDrawing/war/WEB-INF/appengine-generated
/trunk/TestDrawing/war/WEB-INF/appengine-generated/datastore-indexes-auto.xml
/trunk/TestDrawing/war/WEB-INF/appengine-generated/local_db.bin
/trunk/TestDrawing/war/WEB-INF/appengine-web.xml
/trunk/TestDrawing/war/WEB-INF/lib
/trunk/TestDrawing/war/WEB-INF/lib/appengine-api-1.0-sdk-1.3.4.jar
/trunk/TestDrawing/war/WEB-INF/lib/appengine-api-labs-1.3.4.jar
/trunk/TestDrawing/war/WEB-INF/lib/appengine-jsr107cache-1.3.4.jar
/trunk/TestDrawing/war/WEB-INF/lib/commons-codec-1.4.jar
/trunk/TestDrawing/war/WEB-INF/lib/commons-fileupload-1.2.1.jar
/trunk/TestDrawing/war/WEB-INF/lib/commons-io-1.4.jar
/trunk/TestDrawing/war/WEB-INF/lib/datanucleus-appengine-1.0.7.final.jar
/trunk/TestDrawing/war/WEB-INF/lib/datanucleus-core-1.1.5.jar
/trunk/TestDrawing/war/WEB-INF/lib/datanucleus-jpa-1.1.5.jar
/trunk/TestDrawing/war/WEB-INF/lib/geronimo-jpa_3.0_spec-1.1.1.jar
/trunk/TestDrawing/war/WEB-INF/lib/geronimo-jta_1.1_spec-1.1.1.jar
/trunk/TestDrawing/war/WEB-INF/lib/jdo2-api-2.3-eb.jar
/trunk/TestDrawing/war/WEB-INF/lib/jsr107cache-1.1.jar
/trunk/TestDrawing/war/WEB-INF/logging.properties
/trunk/TestDrawing/war/WEB-INF/web.xml
/trunk/TestDrawing/war/demo1.html
/trunk/TestDrawing/war/freshalicious.jpg
/trunk/TestDrawing/war/images
/trunk/TestDrawing/war/images/no_image.png
/trunk/TestDrawing/war/index.html
/trunk/TestDrawing/war/paintweb
/trunk/TestDrawing/war/paintweb/colors
/trunk/TestDrawing/war/paintweb/colors/macos.json
/trunk/TestDrawing/war/paintweb/colors/web.json
/trunk/TestDrawing/war/paintweb/colors/windows.json
/trunk/TestDrawing/war/paintweb/config-example.json
/trunk/TestDrawing/war/paintweb/includes
/trunk/TestDrawing/war/paintweb/includes/json2.js
/trunk/TestDrawing/war/paintweb/interfaces
/trunk/TestDrawing/war/paintweb/interfaces/default
/trunk/TestDrawing/war/paintweb/interfaces/default/style.css
/trunk/TestDrawing/war/paintweb/lang
/trunk/TestDrawing/war/paintweb/lang/en.json
/trunk/TestDrawing/war/paintweb/paintweb.js
/trunk/TestDrawing/war/paintweb/paintweb.src.js
/trunk/TestDrawing/war/submittedDrawings.jsp
=======================================
--- /dev/null
+++ /trunk/TestDrawing/.classpath Fri Jun 11 12:55:51 2010
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+ <classpathentry kind="src" path="src"/>
+ <classpathentry kind="con"
path="com.google.appengine.eclipse.core.GAE_CONTAINER"/>
+ <classpathentry kind="con"
path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+ <classpathentry kind="lib"
path="war/WEB-INF/lib/commons-fileupload-1.2.1.jar"/>
+ <classpathentry kind="lib" path="war/WEB-INF/lib/commons-io-1.4.jar"/>
+ <classpathentry kind="lib" path="war/WEB-INF/lib/commons-codec-1.4.jar"/>
+ <classpathentry kind="output" path="war/WEB-INF/classes"/>
+</classpath>
=======================================
--- /dev/null
+++ /trunk/TestDrawing/.project Fri Jun 11 12:55:51 2010
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>TestDrawing</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ <buildCommand>
+ <name>org.eclipse.jdt.core.javabuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>com.google.gdt.eclipse.core.webAppProjectValidator</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>com.google.appengine.eclipse.core.enhancerbuilder</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ <buildCommand>
+ <name>com.google.appengine.eclipse.core.projectValidator</name>
+ <arguments>
+ </arguments>
+ </buildCommand>
+ </buildSpec>
+ <natures>
+ <nature>org.eclipse.jdt.core.javanature</nature>
+ <nature>com.google.appengine.eclipse.core.gaeNature</nature>
+ </natures>
+</projectDescription>
=======================================
--- /dev/null
+++ /trunk/TestDrawing/.settings/com.google.appengine.eclipse.core.prefs
Fri Jun 11 12:55:51 2010
@@ -0,0 +1,3 @@
+#Thu Jun 10 13:40:18 CDT 2010
+eclipse.preferences.version=1
+filesCopiedToWebInfLib=appengine-api-1.0-sdk-1.3.4.jar|
appengine-api-labs-1.3.4.jar|appengine-jsr107cache-1.3.4.jar|
jsr107cache-1.1.jar|datanucleus-appengine-1.0.7.final.jar|
datanucleus-core-1.1.5.jar|datanucleus-jpa-1.1.5.jar|
geronimo-jpa_3.0_spec-1.1.1.jar|geronimo-jta_1.1_spec-1.1.1.jar|
jdo2-api-2.3-eb.jar
=======================================
--- /dev/null
+++ /trunk/TestDrawing/.settings/com.google.gdt.eclipse.core.prefs Fri Jun
11 12:55:51 2010
@@ -0,0 +1,5 @@
+#Thu Jun 10 16:48:32 CDT 2010
+eclipse.preferences.version=1
+jarsExcludedFromWebInfLib=
+warSrcDir=war
+warSrcDirIsOutput=true
=======================================
--- /dev/null
+++ /trunk/TestDrawing/.settings/com.google.gwt.eclipse.core.prefs Fri Jun
11 12:55:51 2010
@@ -0,0 +1,3 @@
+#Thu Jun 10 16:48:33 CDT 2010
+eclipse.preferences.version=1
+filesCopiedToWebInfLib=
=======================================
--- /dev/null
+++ /trunk/TestDrawing/src/META-INF/jdoconfig.xml Fri Jun 11 12:55:51 2010
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="utf-8"?>
+<jdoconfig xmlns="
http://java.sun.com/xml/ns/jdo/jdoconfig"
+ xmlns:xsi="
http://www.w3.org/2001/XMLSchema-instance"
+
xsi:noNamespaceSchemaLocation="
http://java.sun.com/xml/ns/jdo/jdoconfig">
+
+ <persistence-manager-factory name="transactions-optional">
+ <property name="javax.jdo.PersistenceManagerFactoryClass"
+
value="org.datanucleus.store.appengine.jdo.DatastoreJDOPersistenceManagerFactory"/>
+ <property name="javax.jdo.option.ConnectionURL" value="appengine"/>
+ <property name="javax.jdo.option.NontransactionalRead"
value="true"/>
+ <property name="javax.jdo.option.NontransactionalWrite"
value="true"/>
+ <property name="javax.jdo.option.RetainValues" value="true"/>
+ <property name="datanucleus.appengine.autoCreateDatastoreTxns"
value="true"/>
+ </persistence-manager-factory>
+</jdoconfig>
=======================================
--- /dev/null
+++ /trunk/TestDrawing/src/log4j.properties Fri Jun 11 12:55:51 2010
@@ -0,0 +1,24 @@
+# A default log4j configuration for log4j users.
+#
+# To use this configuration, deploy it into your application's
WEB-INF/classes
+# directory. You are also encouraged to edit it as you like.
+
+# Configure the console as our one appender
+log4j.appender.A1=org.apache.log4j.ConsoleAppender
+log4j.appender.A1.layout=org.apache.log4j.PatternLayout
+log4j.appender.A1.layout.ConversionPattern=%d{HH:mm:ss,SSS} %-5p [%c]
- %m%n
+
+# tighten logging on the DataNucleus Categories
+log4j.category.DataNucleus.JDO=WARN, A1
+log4j.category.DataNucleus.Persistence=WARN, A1
+log4j.category.DataNucleus.Cache=WARN, A1
+log4j.category.DataNucleus.MetaData=WARN, A1
+log4j.category.DataNucleus.General=WARN, A1
+log4j.category.DataNucleus.Utility=WARN, A1
+log4j.category.DataNucleus.Transaction=WARN, A1
+log4j.category.DataNucleus.Datastore=WARN, A1
+log4j.category.DataNucleus.ClassLoading=WARN, A1
+log4j.category.DataNucleus.Plugin=WARN, A1
+log4j.category.DataNucleus.ValueGeneration=WARN, A1
+log4j.category.DataNucleus.Enhancer=WARN, A1
+log4j.category.DataNucleus.SchemaTool=WARN, A1
=======================================
--- /dev/null
+++ /trunk/TestDrawing/src/net/ddaniels/GetDrawingServlet.java Fri Jun 11
12:55:51 2010
@@ -0,0 +1,64 @@
+package net.ddaniels;
+
+import java.io.IOException;
+import java.util.Collections;
+
+import javax.jdo.PersistenceManager;
+import javax.servlet.http.HttpServlet;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
+import net.ddaniels.drawing.DrawingObject;
+import net.ddaniels.persistence.PMF;
+import net.sf.jsr107cache.Cache;
+import net.sf.jsr107cache.CacheFactory;
+import net.sf.jsr107cache.CacheManager;
+
+import com.google.appengine.api.datastore.Blob;
+import com.google.appengine.api.datastore.Key;
+import com.google.appengine.api.datastore.KeyFactory;
+import com.google.appengine.api.users.User;
+import com.google.appengine.api.users.UserService;
+import com.google.appengine.api.users.UserServiceFactory;
+
+@SuppressWarnings("serial")
+public class GetDrawingServlet extends HttpServlet {
+ public void doGet(HttpServletRequest req, HttpServletResponse resp)
throws IOException {
+ String pictureID = req.getParameter("pictureID");
+
+ if (pictureID == null) {
+ resp.sendRedirect("/images/no_image.png");
+ return;
+ }
+ //Look up pictureID in the datastore
+ PersistenceManager pm = PMF.get().getPersistenceManager();
+
+ try {
+ UserService userService = UserServiceFactory.getUserService();
+ User user = userService.getCurrentUser();
+
+ CacheFactory cacheFactory =
CacheManager.getInstance().getCacheFactory();
+ Cache cache;
+ cache = cacheFactory.createCache(Collections.emptyMap());
+
+ Blob imageObject = (Blob)cache.get(pictureID);
+
+ if (imageObject == null) {
+ Key imgKey = KeyFactory.stringToKey(pictureID);
+ DrawingObject drawingObject =
pm.getObjectById(DrawingObject.class, imgKey);
+ imageObject = drawingObject.getImageData();
+ cache.put(pictureID, imageObject);
+ }
+
+ // serve the image
+ resp.setContentType("/images/no_image.png");
+ resp.getOutputStream().write(imageObject.getBytes());
+
+ } catch (Exception e) {
+ resp.sendRedirect("/images/no_image.png");
+ } finally {
+ pm.close();
+ }
+
+ }
+}
=======================================
--- /dev/null
+++ /trunk/TestDrawing/src/net/ddaniels/SubmitDrawingServlet.java Fri Jun
11 12:55:51 2010
@@ -0,0 +1,69 @@
+package net.ddaniels;
+
+import java.io.IOException;
+import java.io.InputStream;
+
+import javax.jdo.PersistenceManager;
+import javax.servlet.http.HttpServlet;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
+import net.ddaniels.drawing.DrawingObject;
+import net.ddaniels.persistence.PMF;
+
+import org.apache.commons.codec.binary.Base64;
+import org.apache.commons.fileupload.FileItemIterator;
+import org.apache.commons.fileupload.FileItemStream;
+import org.apache.commons.fileupload.servlet.ServletFileUpload;
+import org.apache.commons.io.IOUtils;
+
+import com.google.appengine.api.datastore.Blob;
+import com.google.appengine.api.users.User;
+import com.google.appengine.api.users.UserService;
+import com.google.appengine.api.users.UserServiceFactory;
+
+public class SubmitDrawingServlet extends HttpServlet {
+ public void doPost(HttpServletRequest req, HttpServletResponse res) {
+ try {
+
+ UserService userService = UserServiceFactory.getUserService();
+ User user = userService.getCurrentUser();
+
+ // Get the image representation
+ //ServletFileUpload upload = new ServletFileUpload();
+ //FileItemIterator iter = upload.getItemIterator(req);
+ //FileItemStream imageItem = iter.next();
+ //InputStream imgStream = imageItem.openStream();
+
+ String imgDataURL = req.getParameter("dataURL");
+ int commaIndex = imgDataURL.indexOf(",");
+ String imageInfo = imgDataURL.substring(0, commaIndex);
+ String imgDataBase64 = imgDataURL.substring(commaIndex+1);
+
+ System.out.println("ImageInfo = " + imageInfo);
+
+ byte[] imgData = Base64.decodeBase64(imgDataBase64);
+ // construct our entity objects
+ Blob imageBlob = new Blob(imgData);
+ DrawingObject myImage = new DrawingObject(user, imageBlob);
+
+ // persist image
+ PersistenceManager pm = PMF.get().getPersistenceManager();
+ pm.makePersistent(myImage);
+ pm.close();
+
+ // respond to query
+ res.setContentType("text/plain");
+ res.getOutputStream().write("OK!".getBytes());
+ } catch (Exception e) {
+ try {
+ res.setStatus(500);
+ res.getOutputStream().println("FAILED!");
+ e.printStackTrace();
+ } catch (IOException e1) {
+ e1.printStackTrace();
+ }
+ }
+ }
+
+}
=======================================
--- /dev/null
+++ /trunk/TestDrawing/src/net/ddaniels/TestDrawingServlet.java Fri Jun 11
12:55:51 2010
@@ -0,0 +1,13 @@
+package net.ddaniels;
+
+import java.io.IOException;
+import javax.servlet.http.*;
+
+@SuppressWarnings("serial")
+public class TestDrawingServlet extends HttpServlet {
+ public void doGet(HttpServletRequest req, HttpServletResponse resp)
+ throws IOException {
+ resp.setContentType("text/plain");
+ resp.getWriter().println("Hello, world");
+ }
+}
=======================================
--- /dev/null
+++ /trunk/TestDrawing/src/net/ddaniels/drawing/DrawingObject.java Fri Jun
11 12:55:51 2010
@@ -0,0 +1,55 @@
+package net.ddaniels.drawing;
+
+import javax.jdo.annotations.IdGeneratorStrategy;
+import javax.jdo.annotations.PersistenceCapable;
+import javax.jdo.annotations.Persistent;
+import javax.jdo.annotations.PrimaryKey;
+
+import com.google.appengine.api.datastore.Blob;
+import com.google.appengine.api.datastore.Key;
+import com.google.appengine.api.users.User;
+
+@PersistenceCapable
+public class DrawingObject {
+
+ @PrimaryKey
+ @Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
+ private Key key;
+
+ @Persistent
+ private Blob imageData;
+
+ @Persistent
+ private User user;
+
+ public DrawingObject(User user, Blob imageBlob) {
+ this.user = user;
+ this.imageData = imageBlob;
+ }
+
+ public Key getKey() {
+ return key;
+ }
+
+ public void setKey(Key key) {
+ this.key = key;
+ }
+
+
+ public Blob getImageData() {
+ return imageData;
+ }
+
+ public void setImageData(Blob imageData) {
+ this.imageData = imageData;
+ }
+
+ public User getUser() {
+ return user;
+ }
+
+ public void setUser(User user) {
+ this.user = user;
+ }
+
+}
=======================================
--- /dev/null
+++ /trunk/TestDrawing/src/net/ddaniels/persistence/PMF.java Fri Jun 11
12:55:51 2010
@@ -0,0 +1,14 @@
+package net.ddaniels.persistence;
+import javax.jdo.JDOHelper;
+import javax.jdo.PersistenceManagerFactory;
+
+public final class PMF {
+ private static final PersistenceManagerFactory pmfInstance =
+ JDOHelper.getPersistenceManagerFactory("transactions-optional");
+
+ private PMF() {}
+
+ public static PersistenceManagerFactory get() {
+ return pmfInstance;
+ }
+}
=======================================
--- /dev/null
+++
/trunk/TestDrawing/war/WEB-INF/appengine-generated/datastore-indexes-auto.xml
Fri Jun 11 12:55:51 2010
@@ -0,0 +1,4 @@
+<!-- Indices written at Fri, 11 Jun 2010 19:41:41 UTC -->
+
+<datastore-indexes/>
+
=======================================
--- /dev/null
+++ /trunk/TestDrawing/war/WEB-INF/appengine-generated/local_db.bin Fri Jun
11 12:55:51 2010
Binary file, no diff available.
=======================================
--- /dev/null
+++ /trunk/TestDrawing/war/WEB-INF/appengine-web.xml Fri Jun 11 12:55:51
2010
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="utf-8"?>
+<appengine-web-app xmlns="
http://appengine.google.com/ns/1.0">
+ <application>ddaniels-testdrawing</application>
+ <version>1</version>
+
+ <!-- Configure java.util.logging -->
+ <system-properties>
+ <property name="java.util.logging.config.file"
value="WEB-INF/logging.properties"/>
+ </system-properties>
+
+</appengine-web-app>
=======================================
--- /dev/null
+++ /trunk/TestDrawing/war/WEB-INF/lib/appengine-api-1.0-sdk-1.3.4.jar Fri
Jun 11 12:55:51 2010
File is too large to display a diff.
=======================================
--- /dev/null
+++ /trunk/TestDrawing/war/WEB-INF/lib/appengine-api-labs-1.3.4.jar Fri Jun
11 12:55:51 2010
File is too large to display a diff.
=======================================
--- /dev/null
+++ /trunk/TestDrawing/war/WEB-INF/lib/appengine-jsr107cache-1.3.4.jar Fri
Jun 11 12:55:51 2010
Binary file, no diff available.
=======================================
--- /dev/null
+++ /trunk/TestDrawing/war/WEB-INF/lib/commons-codec-1.4.jar Fri Jun 11
12:55:51 2010
Binary file, no diff available.
=======================================
--- /dev/null
+++ /trunk/TestDrawing/war/WEB-INF/lib/commons-fileupload-1.2.1.jar Fri Jun
11 12:55:51 2010
Binary file, no diff available.
=======================================
--- /dev/null
+++ /trunk/TestDrawing/war/WEB-INF/lib/commons-io-1.4.jar Fri Jun 11
12:55:51 2010
Binary file, no diff available.
=======================================
--- /dev/null
+++
/trunk/TestDrawing/war/WEB-INF/lib/datanucleus-appengine-1.0.7.final.jar
Fri Jun 11 12:55:51 2010
Binary file, no diff available.
=======================================
--- /dev/null
+++ /trunk/TestDrawing/war/WEB-INF/lib/datanucleus-core-1.1.5.jar Fri Jun
11 12:55:51 2010
File is too large to display a diff.
=======================================
--- /dev/null
+++ /trunk/TestDrawing/war/WEB-INF/lib/datanucleus-jpa-1.1.5.jar Fri Jun 11
12:55:51 2010
Binary file, no diff available.
=======================================
--- /dev/null
+++ /trunk/TestDrawing/war/WEB-INF/lib/geronimo-jpa_3.0_spec-1.1.1.jar Fri
Jun 11 12:55:51 2010
Binary file, no diff available.
=======================================
--- /dev/null
+++ /trunk/TestDrawing/war/WEB-INF/lib/geronimo-jta_1.1_spec-1.1.1.jar Fri
Jun 11 12:55:51 2010
@@ -0,0 +1,360 @@
+PK
+ •\A8 META-INF/PK
+ ”\A8Â] ú¬ V META-INF/MANIFEST.MF
+RËnÛ0 ¼ Ð? >µ@HK*Ò&2rp\·pa A öj°äÊf"q ’’•¿ %Ų›G Þvvvgv¸âZe`
+ý
+Æ*Ô)‰Y S#vª s,ßæÐT–
+€0˜ à $½~l9ç,ÚğȇiYæ@fX”• sF Z° ap]©Üu[ \_‘ô‡|8²Û¢–9Ð¥ -¤dç\™ŽÇûýžñ’‹
+04ÛqÞÃv¼\Ìæ7ë9MXÄ\ã‡.Š £·\<ðçßóš7Ì ®- Îû˜Ô½Ÿ«QÌâÑÙ+œ5|R‡ 9íò²´¤KnÝ
+¥Ê H/9‰â‹ÏI|yy~ ‡Á¼ùÏÞnî¿WO*¿×»J¯FoÑG ó‡[ äæßP¾á
+×± ƒZ Hï
+ßxxcK CÏW°Â¨Òõù ¬• K° M-VF Q
+O³ íxÛ䱌¬+MÚ)*ór•è vœ‰â×Ïå;É
+]«ç_7ˆONüh‰&%ÓŽEÖ˜¹=7@¾¡Ç»m]Ì'²è r9ŒïÏž‡‰ëÇâ ú?ÓŸÄË8(:\‡µ~,{çXwˆyJÚ/ ùo–$_^í A < PK
+ ‹\A8 javax/PK
+ ‹\A8 javax/transaction/PK
+ ‹\A8 javax/transaction/xa/PK
+ ‹\A8@ßYØ
+ á 0 javax/transaction/HeuristicCommitException.class PÁJÃ@ œmÓFc´ÚZo
+ ”šŠA<Vz)Їà¥Òû6.q%ÙÈf#ý-O ~€ %¾Mƒ‚"¸‡yïÍΛYöýãõ
+À9ú
+
+ìXèºè¹Øeh_J%͘¡98™18“ü^0t"©Äm™Í
+¾ãó”˜n”Ç< q-í\“Žy ÃiôÈŸù"4š«‚ÇFæ*¼ ¥–
+‘ñ$Ï2i® ±x² #†þ Ò‡)WI85Zªdd³ÝL Oª°_ oš—: ×Ò&ïÿå f7}´Ð¶à3 ÿ Cï;÷‹Å šôcö4À¬3¡KÓ UFµ ,Á^ªë5B *hÉÁ!Ö©óW"â7¨Z ¿6 “ÒjÛÁp‰ÆO‡#R
+W {+Uí`»MlUá jgû PK
+ ‹\A8ßTÌ´
+ Þ / javax/transaction/HeuristicMixedException.class PMKÃ@ œmÓFc´ÚZO^ ”~@ƒx¬ô"Їè¥Òû6]âJšÈf#ù[ž
+
+ü þ(ñí6((‚{˜÷Þì¼™eß?^ß œ¡ëÁÁž ¶‹Ž‹}†æ
+L¥ž0Ô{ý ƒs™- C+”©¸+–s¡îù<!¦
+f Of\I3W¤£ dÎ0 ù3/ xšóHË,
+nD¡d®et+K±¸*#ñdø1C·gåAÂÓ8˜j%Óxl¢Ý¥Ès
+Û¬_ oš * ×Ò þa?2‹> h ð úÿ~ Cç;õ‹Å êô]æÔÀŒ1¡KÓ9UFµ1X ½Øë
+B *hÉÁ16©ó×"â·¨ ¿2˜ Òh›ƒá
+µŸ '¤<µ kUå`ºmìØð–ÝÙý PK
+ ‹\A82 dŒ ç 2 javax/transaction/HeuristicRollbackException.class•PÁJÃ@ œmÓFc´ÚZ¯¢ Ô*
+â±Ò‹(
+‚ +½oâ WÓMÙl¤¿å©àÁ ð£Ä·iPP<¸‡7ïÍΛYöýãõ
+À)º
+
+lÙÒvÑq±ÍÐ<—Jš C½w4ap.²{ÁÐ
+¥ 7Å4 úŽG)1í0‹y:áZÚ¹"
+ó s†AøÈŸù<0š«œÇFf*¸
+–¹‘ñm–¦ Ÿ.籘٫!C·Wn )WI06ZªdhÓÝ©Èsž”q¿ Þ8+t,®¤ÍÞý;a`w}4дÅg8ùÏû :ßÙ_,öP§ ³§ f½©º4 2ÂF öR^¯Põ AK ö±J ¿ ¿Fh
+üÊ`DJ«mö ¨ýt8 åaé°³TU ¶[ÇF Þ*w6? PK
+ ‹\A8N× ¿! ï 3 javax/transaction/InvalidTransactionException.class•PÁJÃ@ œmÓFc´ZxT Œ ]Äc¥ Q ‚ [zߦK\I6’¤¥¿å©àÁ ð£Ä·Û
¸‡7ïÍΛYöýãõ
+À :
+
+l™Òv±íb‡¡y¥´*ûõàdÄà\g ÉÐ
+•–÷Ót,ó¡ 'Ä´Ã, ÉHäÊÌ é” ª`àᓘ‰9/s¡ •*ÓüNÏD¢&Ãoêf
+ÉgÓô : ]á‰Ð1 ”¹ÒqÏÄ»©,
+ Û¼_ o MóHÞ* ¾ÿGĹYöÑ@Ó Ÿáì_/dسéyªøƒL³R~]á uú?sj`& ªKÓ%!#lt `/öz
+ªG
+ÒÊ V©ó—"â× _ ôIi´Íîé µŸ Ǥ¬ÃîRU9˜n
+ 6¼ew6? PK
+ ‹\A8]8ýG Ø - javax/transaction/NotSupportedException.class P±NÃ0 <·i !Ph) H@[$"ÄXÔ Á u
êî¦V0J (qªþ S% >€ B<§ HÀ€‡{ï ïÝY~ÿx} p ž : º ì[©¤
+34ûƒ)ƒu—Î C; JLÊÅLä |– Ó Òˆ'SžK3פ¥ŸdÁ0 žù’¯|
sUðHËTù“T‡e–¥¹ óûU$2ÃŽ zýJì'\Å~¨s©â‘
v ¢(x\%ý 0¸aZæ‘x &öøOó+³æ¡ Û€ÇpñÏW1t¿ ¿Xœ I eN ÌØ :4ÝPeT[Ã5ØKu½EèR -Y8Å6uÞFDü UcàÕ cR =¼\£ñÓጔç•ÃÑFU;˜n {Ux»ÚÙÿ PK
+ ‹\A8¼£ó Ì ) javax/transaction/RollbackException.class PÁNÂ@ œ
+j¢ ÜÕ` ã ÃÅè©ñ †û¶nêjÙš¶ ~Ë ‰ ?À 2¾] Mäâ
+æ½7;of³Ÿ_ï ÎÑõà`Ï@ÛEÇÅ>¡y©´*Ç„úàdJp®² Ih
+JËÛù,’ù½ˆRfÚa ‹t*reæŠtÊGU úá“x ‹ Ì
+.D\ªL wYšF"~¾^ÄòÅ0#Bw`
+A*t LÊ\éddBÝ™,
+‘Ø”5 Á›dó<–7ÊDöÖŒÏÌŠ š |
ÂÑ?^Cèü&ý°8@ ?Çœ ÈX2º<]p%® á ôf¯7 =®à% ‡ØäÎ_‰˜ßâjüÊ`ÌJ£m O—¨ýuè³òØ:ôVªÊÁtÛØ±á-»³û
+PK
+ ‹\A8ê4ì -
+
+ javax/transaction/Status.classM‘Ûn‚@ †g<ᡞjµÚÃ+”ø iC 0€ö’l
i4 ]š>[/ú }¨¦³²Æ½‚ïû—ù'Ëïß÷ ÌáQƒ{
+
+ ºadDë06ÌÈÞX h“3÷ù‘³œoXV¤Uú &ò k ޵ˆ ¹|6LG¤ˆÐ—é*°VF`-„®
¤6}×µ£¨ôU„¡ôbе8Ï©!ôd°ö
+Ï ó„#Œ¥õü8
+/ Ëú§°qé(«mïUxíÒ!»eÐD )ådãs} ¡
+î‹C’¾l³ ¡ rÆ‹ãÓŽ}2„©x|éüÀò#KøvŸëeN ˆHÏXþ¡ûï»4á´ B
+F¶a U¨ ÕÅ
+@ƒXS¸IÜRXœï(|EÜU¸GÜWx@<Tøšx¤ð
+ñXá ñÂÓÓ¯ Þïþ PK
+ ‹\A8 Z㺚 à ' javax/transaction/Synchronization.class]ޱ
+Â0 E﫵Õ:èà ¸ÕÅà7 ‚“CÁ=
+¯šR ‰QÔOsð ü(1ÙÄ·\8÷À}ïÏó `‰QŽaŽ‚0©¹±ŽWöxêØkk ½r¾#ŒeãÙýò´ÜÄ¢¨ìÅ)^ëŽ
ÓênÔÁY£ 2Z‹V^%a ã&¼“æ,U,ÄŸ –£#:iöb[·¬|F $ˆ—¤á
+¤@È>²@ yä | PK
+ ‹\A8&þ]S C ' javax/transaction/SystemException.class
+ MOÂ@ †ßå«P+(_~ &VP ã ÃÅHBB¼`¸/¸Á5Кm1ø³< þ ”qviÀàÁËtfö gÞÎ×÷Ç'€K
+ÚH£¢C5‡ ö,ì[8`È ¥ u < ÖeÈ\K_Fm†¤{:`H-_
+=é‹»Ùt(Ô= N¨Sì #> p%u
+7SÑ£ ê½'þÂç^¤¸ òQ$ ß뿆‘˜ÞÎGâY×-†ŠkdÞ„ûc¯ )é [z¥5 aÈÇfÇ íp»Ze÷ƒ™ ‰ŽÔ{Ë ô =ç
‹œ Xµ ]1”Ö W]Ôè`iº"]H“(KRFtŠ6UWæ H7 `o”$°EѦ/P§ác8”9K ¶‘70r Ú¤ÔÚL£¹@b“pB3®!T—ª˜ ³
+ìšåY cV'fÙÚLãè
+É5/OÆ &9:#ó翘öŠi›_ÔÌ’™+ÿ PK
+ ‹\A8–ÓóÜo # javax/transaction/Transaction.class
+Q]/ A =CíT}ÔwQ”øˆ&bã¹O
+ˆ&DÒ ocLjkº+»SÙúi
+ü ?JÜ©jK7ÌÃ$÷Üsνsæýãõ
+À 69–9V
+ 6›¾a Ý/_3äN ©žŒ 1Ç*G‘c c cƒaú^i?65 ‡H*†Ýýó†x ‰k" ÄBZ™› ÷æø›S©–o9J¤UÁOíÎÿÚò-Ãx] Ï ÓŠ; V
+‘ª““мv ¢0ð_„ 3ì¥YþbUì#³Q¨õ ùX™Z·ºt› ð:ÓO}M[Î\õ 9ÃúðŒ IlßÕ"¨»—w
+%)Úò°äLµ"z
+//üDÝ÷Bg8øƒû½è }{˜žÂ*öwò”$7Ó
+èn¥¥F 7 8¥¾CUkU ÚþŠê1
+ † ØÃ3ôUÈP=FÕ$Ý 8² GŽ: „|u
+âOu°iä»X–”St[t ³]ÔzYd ó)¼
+Þ¬¾ãâoŒª%ªFPø PK
+ ‹\A8Ý jc– u * javax/transaction/TransactionManager.class
+’ÛNÂ@ †ÿUdA Ïçó •xíµF ‰5Þ/eÒ¬n[ÒÝ x5/| ʸE„b 6Ù¤óÏ7ÿÌNûþñú à‡
+ë
+ c
+òdÀ0Z©>2Œ_´]j šc“c‹!/
+Ç6Ç Ç.Ç
+Ç>CÑ#ã abÝ-®3”ò ‰@ 7q`Ø©T¯ŸÄ‹h×Ì@®¥ sk ‘Ž}bØüÃV 9
+Q¨TC¸ÏSšÌ}/º T‡aA ð }
+cà «Ô“ëq
+ë M{Q'Œ#—.¥²—R%7"
+E§É,û ŽÔc ¦ ¬¦DàÕî OäÚŽGÙÊÛÐ8q« F†šý=Û-eI§£
+ù)¦še®(ޤ6Ò½‘í!¿ã?Øïm¥ðÁìu¥È *ùª”"ö²†¿ø¬
+|
+rm?ÓIeO²
+õàE(ÙLí³Ïç F <Åœý½ ³ñ˜ òV̓[Ð×ÊV)b
+%L`²›+cª—K˜D™ÆÌ e s=¥`ýK˜ïª }×/õËoq¨ ©«-aù‡ãÊp {Víû Ö> PK
+ ‹\A81EI ! ò 4 javax/transaction/TransactionRequiredException.class•PMKÃ@ œmÓFc´Zx-
+Æ
+ â±Ò‹è)xhKïÛt‰+ù°›Dú·< <ø üQâÛmPP ÜÛ÷fçÍ,ûþñú à
+ ötiÛØ·qÀм–©,†uïlÊ`ÝdsÁÐ
+d*îËd&Ô„ÏbbÚA òxÊ•ÔsEZÅƒÌ .‚GþÌ—~¡xšó° YêO¾û‘X”R‰ùí2 Oš 0t<³ãÇ< üq¡d
+t¾ ˆ<ç‘ ü%`pÆY©Bq'uz÷¯Œ¾ÞvÑ@S —¡ÿ¿72
+™|•H $’¬ _Wè¢N_¨O
+LGPµiº"d„ Þ
+ìÅ\oPu cZ9Á&uîZDü ¡6p+ƒ!)µ¶Ù;_¡öÓá””žq8\«* ÝmcÇ„·ÌÎî'PK
+ ‹\A80f¸¦! ø 6 javax/transaction/TransactionRolledbackException.class•PËJÃ@ =Ó¦ ÆhµZq+ Œ Œ e¥ ÑUpÑ–î'é G“LIRéo¹*¸ð ü(ñÎ4(( Îâ>Ïã2ï ¯o .Ðq`aG‡¶ ] {Ík™ÉrÀP÷N&Ö š
+†V 3q?OC‘ y˜Ð¤
+¨ˆ' žKÝWC«|
ÃeðÈŸùÂ/sž <*¥Êüñw=TI"¦! žn ‘˜éQŸ¡ã –Ÿð,öGe.³¸¯/°SQ <6–¿ ÎHÍóHÜIíßýÛåLó]4ÐÔÁe8ÿï æ†<•þP¤ª _+
+¢N ©_
+L›P´©»¢Ì(7zK° ³^£èP ºD9Â:Uî
+Dó
+ÊZÀ „ÔØfït‰ÚO
+cBzFa
+ª tµ‰-cÞ2œíOPK
+ ‹\A8¦î«Ñ : javax/transaction/TransactionSynchronizationRegistry.class
+‘MNÃ0
+ß”Ò@ ¤@8 H7DHìØ#U Uj v®±BJdW¶ƒ GcÁ 8 Âö ú /æIcÏ{ßÈ_ß Ÿ .q á8BB ÂN
+Qµæ‚p–ÞÍÙ+Ë*&‹l2› n¯G›-BìÇTUÍ ™Èª!l¥£G¡ëßk&
+ã¶TòV¸›$mµHVŸæ–ÙÚ Ÿ±ÃZÔKXç-X- „S-ŠÒX¡ÇÒ•
+2â)o$ ÖJ–ïÌçü.ù–Ù¿ôlíU0‹MË’®ßÏ ×MYy¶å
+VM¦ E7 >Žpµ™úÿ,a¸¾h @èÀŸ¨ë˜Ð œn£ 4ÂNÐ]ôƒ ° t Acݤû*W;8ú PK
+ ‹\A8)Ø ÙM • ' javax/transaction/UserTransaction.class}‘]OÂ0 †ß"¬|
¨ ‚_¨Äx!$ÆÅ ¡‘ %qè}©ÍRì6²u þš þ ”±[p!6iÚóžç¼§ _ß Ÿ nСا8
( „+}‚ nï
+ z;åb¢eàG ‡ G <OjŠcŠ6Å
Å)Å AÅ ÚÑLÇQZÜ'(‡ R#Æß ê‘ÐOóhà« AË(à ù ã‰ýPz"ˆ5A±ÛO ;A
+rq'•
h>G"ÌÁ×cöΠΓejëEÂþ 4 ÆVÌwíÁh,¸ép¹Zö h'žL‚P‹×ìÆk 8³H /ÇôV™{ ‡2Ò’?Èé’ßÕ?ìïëäðÎâì}¥„ËTò¾"G\¬ ®ñi/|
+ÁM?=˲ A ɰпãP4q)‰Œj œiÛF© Š 6±•æ¶QŸç &Q ]6nµ9·³ä[Kµ]ìåkÍlš} PK
+ ‹\A8 ÿÎ(É ¥ & javax/transaction/xa/XAException.class
+”[SÓ@ ÇÏÒÒÒP.‚ € À[)JE¼ƒHÚ¤m$M˜4tÀ &”X‚%uÒâðµ|
p˜ñÁ à ò.ž³Mé >ø²Éï—³ÿ“ÝmúåÏ§Ï ° ë ôBž†B ¢PŒƒ ‡W [òŽ•ÍÊe• Ó ä ~³åøŠS?r#8w %/²L]Ïʹõ çÌR)/k: ¹
+©¨²¢›¹u’o r© ¶Z°4{›l Äi U‹Ì~ÇlX¦m’ñ $¹±µ’jnÚä :i¶% eM5¸}Ë [ÕPÚ“³¤ ,ÙVéq¢
+]T7¢üšL_×à ÈÄÛ»@ÆÊ’ˆuKJÚ ™Þ°‹j[|
+Ñpã Óйˆð)ªµ#—· \äôôôOÇX%Õ²Èüæ“Ð ¦-“øÕ)ÑŒŠ¬“ùÙ1í @óƒA Ã÷ Õ÷N‘²¹¡)d¾ñ•£Á*kŠJî+vsƒ ä {x:± Ï÷Z«"©¹
+ƒhÛ éžï G‡»n`;»u4#z£êÔ+Nà ‡2ÚÚ÷šfõ ç½sœi Žßtª-¯ágŽ v>®ºï — Œ¥xU¦îøµL¹ x~m™:Æ ÝfÓ©ñ ÿ `‹”FUR¹q TݼGm‡
+ä š“„g𜆵$<¥s›þß 1 í6;³0ƒŸ@/
+Û$L@â€Ç‹Ô dé
+÷ œD
+ x yHàaä
+| yLàqäK _Fž8Ç“ O!_ ø*ò5 ¯#O <ƒ<+ð
+ä› ßB¾-ð
+ä”ÀsÈi ç‘ï
+| yAàò} ‘ ¼„üPàGÈ ~‚wx°ôAá
+
+6ŽËHKxeô
+¦O€}à¥+8Jx x ‡¹Š#àñð"¤—x¥€µ0` +©6–ž? žó
2ÎÉò„ñvU˜@w2>a<+ fåÃ,‰^&=õ "ݼA ß( ?ž‚ ) eJ|‰”©ðyê_PK
+ ‹\A8Û á©ñ & % javax/transaction/xa/XAResource.class
+’MSÓ@ ÇŸeÛ¦ EE * 4¾ Ñ# 3%Õh“0ÙÀ
+œ%¬L0M:IÊôèçòà ðC9> ¢
+C ¿ß>/ÿMòó×÷ °
+o x¥À6 †g ö®ËÚºM€˜ fÚq”f<Ê x8 ¾ ¨yVG7»´ —ôÁ1m
+MI“že; ®þŽQÈ q¤c {ïufз¹©{–k°}Ë õœ§=‹yºëåk) Ë1l¿Ý6 £•‘`{˜ŽNü ‡úgw×±»Gr ¶UQ8 1 ÷zAF`¥Õ=ç |
¨e
RîgA
+iC®
+ §;Çê F3†¾èK *ðš Ñéõm¦l«}‰“3 –¯©”
+‹Xå Ž¼ 'â öÑ–Š¯¶
+¤Œ÷„k Ø 7HwE _ì¨Ç ”~"ú< 7lÆÙJ"üøB$ò6¦úi|1ÆHâ0<áþWÌ›þ?o gàú*þ
bƒå‘:AˆIfG ·ä «7\
+Àœ¬ÐB
+ iÎɹðqfsLÓß/TÃÿ ä—Ÿ‚% PAª"M@
+Y)p
+y²À
+ä© O#Ï ø òl ç ç ¼€|»Àw | ù^ ï#/]Ùר x Ñ<B#O–ѬÀjÉ4áqɬÁzÉlÀ“’y
+›%Ó µdžý3ù9¼(™—Wóೕç×~ PK
+ ‹\A8Î Òªä $
+ javax/transaction/xa/Xid.classUŽMN A
+_1#£ü(º0z ØØñ 2"d AÐ ] C‹MÚédè1œÍ
+ àP†šaa\½|ý¾êªíï÷ €kœF8‰Ð!´
+ú³Ñô) L’×; %„öËÖž3ÿ¶Рø7{/
+?÷ï÷ÞÙRû8ç,ý lÍ»Ñ9!ìöÞbBSº¡Ë?Ù' BÐíÉŸçò6²nÎv*SkN½qYY7&®ÈS=4V gfqµâ/&\”±QþÏV VÒ :e¥,gKõ8_éÔ×ånÔäÎ .
:¨¨.
+ýã ”-8 $ hVÙ*Yœvå
+ï PK
+ ‹\A8²“]þm _, META-INF/LICENSEÝZ[sÛÆ ~÷¯Ør¦Si ¦ 4i 牱ä†CiD¹n&“‡%°
· °È.
Šýõ=—½ ¤dwúVM¦5IìÙ³çò ïœÅ ñ¹¿E/Ë ïu©:§^<óä?”uÚtâëùëBüMv£´ ñõë×ß<¹h7ý›W¯öûý\Ò6sc·¯ Þʽz ï¯ï~Z‹ÅêJ¼½Y]-ï—7«µxws'>¬¯ qw}{wsõá-~]ÐSWËõýÝò‡ ø
+ øj.®T;=€rnþÂk3ó'š
·“M#Z%;1ÀI e['dW‰Òt ¯ µ±btª VõÖTc‰_ ^ >[i7X½ ñ{! ¨pKU‰ÍA¬UÉB¾ ùÖŒÛ øN˜ >hxΔc«ºáX/cO +M °z» „ÙwÊ
+P êá ä8ìŒÕÿ¦ý¼œs+†
+ lºµ v[zÈÛ!S@me#®Iô‰ c‡ $í• %I Z€ àY/ÆÀ ^A
+o
+
+¬i
+!
+ RºÀÓà·cWÁ²Ò´é¼$ÿ ØëaÇrxùxg,éÑ ¶7 1ɪÑáÁG3/eFGqâB_òR³W¶ ÷Yð *¡;þw! #J
NÇç¼ þ‰,`E+;¹Uè<Ü× åÎ+VˆýNÑñÁû´¯$Ù¹eö £
¤\hЄÜãvºGIµ®Áš½²%оøöõï/i; æaà Aãà °:ú Üd• AäFu`„Rƒ+'Ò3=“Ë 6ãL\ÀZü— ]æ^‡ÿÐ& º Q– y|
x ê ´Õ ½[í
+ <Å ' ¹å$ÔÖ°[ ) éÕ
+GZoU¬
+åôkM ÿ„[´¦Òp4IY
+¬»² É „¢3ƒht«qwð£3õ°Çðr´!8¥ ë‡Ü#A^?P„ü¯õv´ô;¸¥Q |Ülþ ¡pªºì ü
+¸cl(?jkZø±ÜÉ ´ QÑ9|
R†€¢o ÿ± R°yH\1= —qtLH›^cB RÎ s ‘ g€¯' ÎÑ NúÀèíP çn«*-Åpèóc 4öÓ
(ìáKÒ˜p #-¥€îÂ1b °éü±ZY <HÝÈM ò?Ã¥ Ñ °”>”dÄ
+€n` x8Â [
+
+ÖdV9X[ÈBA[/â
+eÛÃΰ
+œ â“‹¾W°ó#$Scö—É
+WÊê °âƒ h 7;Ž Üã¼
+üé½$¶AP|#
+:¯£T¬p Œ~ˆ
+Æ*ÜŠÜ
+¹°ßér— 8k€ ™iÕƒ&Wb ƒi|ž 66|
ÞÍy6yaX唃H!ëKØÌ4” °Lou »œúü NÕ“ô/ıù¼õ0š½ïH¼¯ VµRÇüT½´ )h :F«¬j Ý'2Ü ¢ 㤓ºN× D¶–% ‰"«‘Ѩ'J¡u”©“×ß"”û ÖãÇ9 S6Û/ Ð'\¨¥Q 6ñ
Åpå™H dØ6´
+~ Jù"KŠ QßÀÖM€m7n ;<x ÞAÑEš“z> h#Âñ Z ¼LåîÙj‘ DeÚ
+ã}£À˜5˜âiòòeÕ^Ìâ™f^ ×û ˰H5 €Ö è
+ l(Žö ×uD>ÆÎ[_` äFWÉPh§Á¥d!û»âÙR ±+ß þK: "ê 7@)AZV²" r 7¨Öå 5wTXBJª‘þ
v?V>f+‘kåF/2 ™DAfm´ pÜrtTåiÇ–ðÒÓÈ „x©4©Ç`„éYC<ÂQ\¯ËÑŒ ’·•ö BŸMì(P.åô¶#ì‡PD ‘aÏF"‚Õl ö–"ÏÕùì4
+ øu<vÈÀÏRžÜ€ˆ íѦb Êl Ä PFEH Jçû¤$tê· â§ÁmK öær „7K? ¢¯çâ¯H«pÛ·ñø Y‰õÈÅÕÇêÙf&K³
+• TI‘ H „€ÎÄ∠9„S ÃëÕ –
á Ð×T{ \£3ÝKò¼ƒ ãÇ—Àzì 's ÍpxY[ Ÿ4 » S" ŸTsßÿᆡۂ c=Æñ Ò%8ïÇ
+¬ +B ö „@ ߀Î\j
+}ã‰EÞ·å4?b1‘å“
+Ï”s vÐ 3 ÝJ Ýÿ ï\À2Õ ˜`Ðr " ‚Ž ¢KÑóY3ï ] a;ù ˆå
+¨ 6u < Š€j ~ù QŒ
+Ø1 <Qö¬ `&œMÀ>
+»Ê¾o°Ý4
+8 ¬ŒØåU+ ©ÁÞülv8°" É q³ƒìuNZMÙY[@ŸÐÑ(
+j_žø î Ú`Ó)_ þ€‘DVOËŽ „ q‡ë«-¨Ï$oªœßb ® µn.–5ú?öB
+c::eÐ[VAn%þL ç ÷‹T°"·¶Æ¹—d0<FiFäOü </E#÷nÔ
+µQ[. `± |â G¨ø
+ÀQM`Å oµ“œ29ç Ž üÑ S 1LŦ‘ (ShF}¦„F#å˜/y UquÀ Eï
+X‘. ¶
+¾Á Ò°O¬
+¾™‹;•O†æ´u+ ÙŽQ pP n3Á£gX
+¹ i#l6 ÈQ
+!£ ÿ7±"OÛf.áO Y‘Z!2H
+V)örm 艸¾ ìz êì
+¼ä“Ž i[Ô Õã~ ܪሠZ9õ Ý!þ
+TR}8î$¾§2 öÜd{òà&Qi죰 硎Š‚öAw 'Ü=ºl{„¸ Ò( [÷- C±œéÎe¶³U $X xsÖÂSw
+ .Û8n˜ ¢ÀKÕ±ðÑ] ,V
+yS‘‘
+Ñ!¥›? Îès©ø—˜ £g AÊU† -T <&š“3Î ©pñINKõÔhÕ%‚Vô¿oüÐÕ³ÕÍýòíõ’ïq
{cÚù= rgûäÙ•AÀ™L9±,ù+ ZO >” õ˜)èÔY³"(Iœófb<¨ 2ðAè Å—Ø5 sÞÂgíJÁ 2 %
+¶Sù”Þ/IÙ
+Ä 6} Ô”AÇdëd¡IT¹guø> óI åy=
+@ ]'œÁ’¹M ðT¾±Å©•eàzÙ”Ë÷ g¬T e
+ è ÙY ÐV/ñ ‡è› çsÐ0#±P šÐû
+waˆ_§fÎüMä [é8äƒ
+"5¯ÈP¦êøÜ"Ä:Lfó±lȪ [ìwòˆÌ¤ Õ½
+¾$
+¶¾ Gäg¢~
+Ç U¥ºjl m DL îÿ‚; 1
+† `†³ÉDÓ*虘 Øñ8þØ0OÝ[œ5Qê*ˆ¶Ò°ž ÀÑà+s
+ñçÈUÆ‘œFÖ:a¹g | í ¹2b1Ù]‘©ÏhS¤´©©Y<<ÑŠäÓ¹˜J$ ·Î¦yI “ÛªI ެ gÉD¥1Ž&c™Ø©
+u ‡|KÍŽ¿ à^5±@7 :¨¢Žœ¦
+a£RcûK ³ ’8ß8
+³Èl˜• ±ž
+]%¦ ;
+ r˜êmòéó ÓšyšEjf Ã"˜ºVáö‘ׯ̀‹âí
+Õ— á¦ÓvKí
+– RÍ P œª _ a d.ñ 1»à )X1¶D[èé(ð >C¨#S ªÌ ž€7 Ī´|¯tÜ{ø»€? â 3
+] BÎ )wv#„†÷ jL_Â5†lqn
+N½”}À™¾ÿ :ù æ‡CÐ C¤¤6ÕªßFío ° ;ð –tr) ~Óâõ4j V ÞQ ½+bÓ “Ú“ùlȦà7_
+Δ ¶ÔŸçâJ;j ðÒ¶ ‚] 1 ¢ª› 7°Ôyc‹•`€¼HÍKš‚ Éa>÷]Rõ uÅ¡Áq‹š? ãˉs/q® ?[¬År= ?,ÖËu0îÇåý 7 îÅÇÅÝÝbu¿¼^‹›»üZþæ X¬~ _®®€îh¾ ~Äé¨K'Ñ„+U6&M DsR pê M.™Š "{
+±`Ìûåýûë ¬¾z¹\½»[®þzýÓõê¾ ?]ß½ý ´\ü°|¿¼ÿ™BèÝò~u½æ× ^Æíâ
+öáýâNÜ~¸»½Y_sµåÛ o @ÿ
+6Õtë@73Ü NÃ <gMo5Òs:p
+Ñ
+ Pü%ÄÍæ¥<mt 8
+7Àµv„ìΔ:¶Éêþž•¦±ùEëi3˱÷—9| &ÅEïµÜè†.Ï—Xy Пn =X |
Õа t„N; µ„›, ! tjÛh`_¥º,âmw1 åÆÉÏgãý‚‰ Îô ½!BGÊmq
+ ï-– ¾ àèvü|~0zNÊ e‚Ë M û‰ ¹V¶r; áãêðJ@z9Àõ
+ïÖ³ÛgH( ¶|•€ †gºx!ç
+ „Æ™ è ãjËwæXÅcÆ[ããF—¬9FŒ ù Ýygf¸šO.ž½ Zá± Ã »5¦Úë&Ÿ
+~‚¢lú^â” 9ÁˆŠ×R7£åj$›zì ¹¡"xæM ¼ ÀàÍíÁ + ƒqˆ ýx çeÄaº¬
+4]’Öþõ
+È o„ðrƒ Ï ðÝ\,J¬ h
+€¼¸ó" ê,)>î ºOÓõø²ðÙë¶ÀBË 1< ¥Içä² f®ÀÛjEx PG Ê®T|ˆžÇ
+ý wªíðÕ’4 c³6Awa6 ŸB oy
+°ƒÌ—¯Zà<˜/¾¿Ò Acƒñ£Ùc'Äd4 Ù3 œÎGo´tMv 9·¿ ¡!®ÿ 4Á(éKL'Ý¢$DO“¢,üL {&]3>cÂs¾“mêh›JÕЮð
+`ÆÕ™Ñ¹´-!Q ×ÑŠ) GkÓm™Ÿ
+ &CWŽÍ* Q‹Ó¹ñæàÉF:Ð - l Éü>‹ÆŒ6F]8€¯WWXWϽ G¿/noá‘å?ß iZ ˆzð¯/ä¯îáo¤Ê>Þ%Áßý .(ük ÓiB Õ ²ÆB >„©F‘:ùZ«¦r
+ $;ƒþ o) Dæì—_g øh2á«Ý! ¡ªïú²Nz..®L÷‡ø¾@–£Aøï. uëÔ¦: @ñ£
+¾;ÈÊvv7‹¹â €ç ñ"”šzV p 6 /¨øi?'
+(NÏrÜ@”!cå¶‹hf Šq¸ZݨôÊ
+Ý M
+.œ r4¸Fža˜Þ|ú—_PM <
+ïã½å½k
+Ϥ!‡´å o¬9 Òeâ/ øûUüBzƒžG·¬¿Òã>Hª¬gš†O‘¿ *.ð øÎåå÷("ô# \¾üø<ÐxÝù6” 1FT¤8"uýfCÓ29 Ù
+@–C ÷Ͻrú
+¸ûj}ý T¦%_ÂПâ
+þ 3 “ ÔNßpÂKƒü § øÿH¿ ñ&³•š¨ ‚œh
+Ä
+ÛŽ p@ ,tÇoöùiIâëîô\ Vÿ PK
+ ‹\A8 :Mk| « META-INF/NOTICE}̱ Â
€áýžâF; .Æ1Ñ °/€p ’Ê 8$}û6 W— úò ÉXOx£Ì1¼ áÂiÉaò‚‡¾?î·œpÜÄð
+w~J3™ðÊ5:# #ÀèCÁ”ÙU+ ¢ «£‚åG
+½iæD ü á΋¤³Ö5e>Lqžt§ VPK
+ •\A8 META-INF/maven/PK
+ •\A8 ) META-INF/maven/org.apache.geronimo.specs/PK
+ •\A8 ? META-INF/maven/org.apache.geronimo.specs/geronimo-jta_1.1_spec/PK
+ ‰\A8ö » ¨ ? F META-INF/maven/org.apache.geronimo.specs/geronimo-jta_1.1_spec/pom.xml½UMsÛ6 =G¿bËñ!NÅ/ÛISUfF±©RGʘrÓœ<
Q°I€
Rþ÷]€¤Ä8öL/ ¶±Ø ÷Þ>Hã »"‡ŠJÅ ?wB/p€òD¤ŒgçÎírê¾w>DƒñO®; ü¹f 劦 è
+
+II ü ‹µ®‰¤0 [ž Íàõ$ž
+
+© Á©-
+ i‰àZ²ÕVc oZ É$¥ åZy 1¥¶ÿ|±œ]\ÁšåMƒ”©¦ !ÔLo0‰)¨
+|€5ö"iÊÌp’ ã (, [)iF¤¡
+ÃËGɲ Qsd¾a%N\ 6ñ´ƒ£šÎûÁÈ÷Ql[:=æ
Cø³Ñ N¼ ^c‚rÚkçø7[^ GàBÃVÑC »„– #´¢Ì áISÞ2ÜOA˜ßÚ.b¥
Ë ÄºŸ DÛrû 6Z—#߯ëÚ# ³'dæw4ýkÔw
+_¹ˆûPtËsª jö÷–I”zõ ¤Dd Y!ÞœÔf“vaÖ ¤–(<φ¶\uvè¯ë ] ù÷ P<ÒìÊ™Ä0‹
+ø8‰gñ ¾Î–¿/n—ðurs3™/gW1,nàb1¿œ-g‹9ž¦0™ ³¥ Ìæ—C (
+ £»R
+ – aiÚ³V‡Âø¦Û—*iÂÖ,AŠ<Û’ŒB&ðqpc›’Ê‚)³c
+8S4JÁ´õ—²µ?ðó ®
+ìÛ £ Z à]øËÙé¯p G—DÓ œ Á{78qƒ Âptúvôö
+ü
+„ :h*Ù 0>¥+›vŒUM»RŠ{šhÀ‡ËÕ¹Ó®· åý Y|öϼÀ<h›9Ú)¶Ï6f¨Om
+6 ý¿>_ÇXX —q¥ ÿ°J±‘²Ák‘Xžÿb ¼”a nuv Ü ÞN¥ R1ª ‘Ò¼}<‘í1ö¿‹µy%ú‰ë¨ñ´
dRlËY a÷nPF¥à¬ žÙ£ û]Ê¡ˆHÍÖ$Ñ lsz‘CZû
+ÞÙØï ‡kIs ¤¢_ˆÞDžç—¢ðPä±ÿÝEƒÛï€ ž èк÷šÜ
+^xg ý ™' $C F÷Dš~ݱ¹æ¤ Ñ§å °ÅØ·§Á ö¦z¢§ èhÍ¨Š ¯ A;õ„ʘ‡oGHí• flEvž–„+Ä
+=Þ ´/%÷ ô\J Ô Mö8_!×
+È ¶JŠÞ ü
+áÔBŠðb¤*>2 Tè@ü¿ï?IK¡|¢Öû¡¾5€¯I¦ügWá¶Âõ†
+&§´¢¹ wñ @xnÚ ËVæÿálÓ½µ² `×b>‚¢Á?PK
+ ”\A8=bg
v ƒ M META-INF/maven/org.apache.geronimo.specs/geronimo-jta_1.1_spec/pom.properties5‹±
+Â0 @÷ûŠƒÎ†ÄŠH¡“Xéàæ^®é S0 —Xðï ƒ¼ñ½×\9°Pá ç Þhã Í
+ žQ 4¦k ÝAãùrǽÖ'ØX² ¡7ª Nâ; K Å)JdŸ¬
+Kþ UNl3 ÿ [jô7»µÐTïéWÀ PK
+ •\A8 íA META-INF/PK
+ ”\A8Â] ú¬ V ¤ ' META-INF/MANIFEST.MFPK
+ ‹\A8 íA javax/PK
+ ‹\A8 íA) javax/transaction/PK
+ ‹\A8 íAY javax/transaction/xa/PK
+ ‹\A8@ßYØ
+ á 0 ¤ Œ javax/transaction/HeuristicCommitException.classPK
+ ‹\A8ßTÌ´
+ Þ / ¤ ö javax/transaction/HeuristicMixedException.classPK
+ ‹\A82 dŒ ç 2 ¤ _ javax/transaction/HeuristicRollbackException.classPK
+ ‹\A8N× ¿! ï 3 ¤ Î javax/transaction/InvalidTransactionException.classPK
+ ‹\A8]8ýG Ø - ¤ @ javax/transaction/NotSupportedException.classPK
+ ‹\A8¼£ó Ì ) ¤ ¥
javax/transaction/RollbackException.classPK
+ ‹\A8ê4ì -
+
+ ¤ javax/transaction/Status.classPK
+ ‹\A8
Z㺚 à ' ¤ j javax/transaction/Synchronization.classPK
+ ‹\A8&þ]S C ' ¤ I
+ javax/transaction/SystemException.classPK
+ ‹\A8–ÓóÜo # ¤ á javax/transaction/Transaction.classPK
+ ‹\A8Ý jc– u * ¤ ‘ javax/transaction/TransactionManager.classPK
+ ‹\A81EI ! ò 4 ¤ o javax/transaction/TransactionRequiredException.classPK
+ ‹\A80f¸¦! ø 6 ¤ â javax/transaction/TransactionRolledbackException.classPK
+ ‹\A8¦î«Ñ : ¤ W javax/transaction/TransactionSynchronizationRegistry.classPK
+ ‹\A8)Ø ÙM • ' ¤ µ javax/transaction/UserTransaction.classPK
+ ‹\A8 ÿÎ(É ¥ & ¤ G javax/transaction/xa/XAException.classPK
+ ‹\A8Û á©ñ & % ¤ T javax/transaction/xa/XAResource.classPK
+ ‹\A8Î Òªä $
+ ¤ ˆ
+ javax/transaction/xa/Xid.classPK
+ ‹\A8²“]þm _, ¤ ¨
+ META-INF/LICENSEPK
+ ‹\A8 :Mk| « ¤ C. META-INF/NOTICEPK
+ •\A8 íAì. META-INF/maven/PK
+ •\A8 ) íA / META-INF/maven/org.apache.geronimo.specs/PK
+ •\A8 ? íA`/ META-INF/maven/org.apache.geronimo.specs/geronimo-jta_1.1_spec/PK
+ ‰\A8ö » ¨ ? F ¤ ½/ META-INF/maven/org.apache.geronimo.specs/geronimo-jta_1.1_spec/pom.xmlPK
+ ”\A8=bg
v ƒ M ¤ É3 META-INF/maven/org.apache.geronimo.specs/geronimo-jta_1.1_spec/pom.propertiesPK
+
+ Þ ª4
=======================================
--- /dev/null
+++ /trunk/TestDrawing/war/WEB-INF/lib/jdo2-api-2.3-eb.jar Fri Jun 11
12:55:51 2010
Binary file, no diff available.
=======================================
--- /dev/null
+++ /trunk/TestDrawing/war/WEB-INF/lib/jsr107cache-1.1.jar Fri Jun 11
12:55:51 2010
@@ -0,0 +1,173 @@
+PK
+ k„<: META-INF/PK
+ j„<:·ŸÎBf | META-INF/MANIFEST.MFóMÌËLK-.Ñ
+K-*ÎÌϳR0Ô3àår,JÎÈ,K-B ä¤V” +À$x¹œ‹R KRSt *
+ “3R | ËRóx¹œJ3sJÀâé9¥ÉÙ ]¯”l é¦z ñ†f¼\¼\ PK
+ j„<: net/PK
+ j„<: net/sf/PK
+ j„<: net/sf/jsr107cache/PK
+ j„<:ó Þ î 7
+ net/sf/jsr107cache/Cache.class RËnÓ@ =Ó$vIHi ¥-ï ÚÚ@ë e
+¢ !ŠºˆÔ »©34N§¶ñŒ#§±à ø(Ä ‰£Ð K,ì#ßÇ9÷žë_¿ üD xåâÐEà∡ &±æQ¬>Š1úw2ä#
+H
+_ §çC ê¶ÿ™¡9:ã2 Ë"ÖÙ¸'4ÚçOzr
+É€Bm G|͹TT7àjÐIúÔRñü n¤ºW©
+Ûo"v.Å„ÆIsýNJ†–÷ Ý'ž¶ý3†ªŠ¾ ‡32òÄ»yM´“HI“FILÚ• C··h‘ CDIåVwß[ÌèÏ ÃPï~ Ej’ÊÅ1
+' Þ/ñŽfwMÚJl•I˜
+S!.iz² áí ªÿܧIûtx8 ]s!†× ˆ
+ Ô—`¨²ã£7¡) fMÄÒš²ô4בÒQ¨Œ§å ³:ãi&®’ Ý« JÁ3{kZ±&FQHÛ5x¿ BÅ" ”ÛõJI§EÖ •
鬱ÞKò, ï#IJuÛphV¥¿£Œ auÞrìÚ} ¶KÍ™žÝa`X¢§ `£JÇC
+ t
+t±lñFñ]GÃâM4-® ù[Xµ¸Vä[¸mñ Ö-ÞÅ ©l’J•p‹"÷p .ò ç" ŠîÇxbq ; Ÿâ™ÅÝ"¿‡}‹^ >ž[|
a ¸^Ò{ PK
+ j„<:
+N ² ˜ # net/sf/jsr107cache/CacheEntry.classU ¿NÃ0 ÄϤÛÐÒ–òoac€ \&f Q b :° × G!‰l Á«1ð < Âq, û§ïîtŸåïŸÏ/D8Æ
+Å b“b‹€.¤½TÖ D‡GS‚¡›¯¹±çBHcîÕ«ôÎÕÊy(çÜÊÚé;-Ñ’[UäµR¥&ï¥Ò ´Øi3© ÜBef<Ss_ûX?
)Œu±»b©
+¼PYÕœpñ"'¹Õ ') ã û¹´Ì<³ÔèÓñ™¨l¶
+ ª Ëx¾`·O© –b—`äÕ¥U »áåAÈ6 »Ó<—:ɸ1Ò}Aï_¸E@°æN Ý h
8¶@=Û À8p=°‹žçF5»¦¾¿ ØqŒ}ï ÛÎ/PK
+ j„<:‰þL‘S j ' net/sf/jsr107cache/CacheException.class
+ ÍNÂP
+Ï¥@ A”? 5Á¢Vã †
+ÑĤq a_ê .ÁÖ”¢¼–+ >€ eœ)
+*’ØÅ™¹Ó3ß̽ ŸoïÐp‚í (²”X6tlêØ H^)W u rÔ ˆ7¼{) µ”+ïF
+é·ì΀*9ËsìAÛö Ÿ£b<è©¡À¾åÊÀ
+>˜ý¡ ~véØNOš
+Öë±#Ÿ å¹5 bÅêÛ϶9°Ý®Ù|
åvk<R™þç—€± áG¥Õó½ Þ#¤Ää˜F,ü- jz#ß‘7Š—ÎÿÞì”[ÒHBgɰ¬
”ÿ½ ¾‡Íª(#NÏËŸ ÁTÒ%:]P Æ â•’ –IS <5 ( ÒS V(C ÈD€:9Ù›4ª Äæ ;Ô³ JSWDàl Ùp8],bÝÒr Eݨ
+O Íà Èz Âö¦¶ L `œ#Gnz†°»ð PK
+ j„<:q ȯ þ % net/sf/jsr107cache/CacheFactory.class;õo×> f ]
+v Nv .F îä¢ÔÄ’TçÄäŒTF m
+Ÿ¬Ä²DýÒ’Ì
+}ßÄ kMŸ¼Ô ýâ4ý¬â"C ód 2}°bkF .׊äÔ‚’Ìü¼bv n ?8¿´(9Õ-3 h” X•[brI~Q¥
+ÈTF y\†A•12 €ÏIÌK×÷OÊJM.adPÄ¥ n; # # 0²0 ýÇ ä³ y š
+ˆÙ l& PK
+ j„<:ë
+†µ ô & net/sf/jsr107cache/CacheListener.class]Ž= A †ßÁ}øŒHôJ
+–J¡ ªK ‰~Á]ÎnrwîÇ)ü ?JìÉ5L1ÏdæÉÌ¼Þ 'ª £ã¡å¡Mp Œ< úÃ
’¹ ±Ô ±9F¬²Åè@pŒÞÞ3‚gô* •|£w|39 ›Ë˜eB¨ ¹±7÷Dñ:Œí°·”êÊA˜f¬9™ Û Í™HÏ"J“Ùt®
+Cüx„îÿ . PA NÍžB
+°tJº%½’>êÖ´ÏØ\Aó PK
+ j„<:åm º© î $ net/sf/jsr107cache/CacheLoader.class;õo×> f ] nv Nv .F –œüÄ F 5
+Ÿ¬Ä²DýœÄ¼t}ÿ¤¬Ôä kML!F v zÇœ
+F u¨–Ò’Ì
+}çüœ
+ ‚Ìü<˜6°°ob P Wp~iQrª[fN*#ƒ€sbrFª ДÔ"= JF ¹¼Ô ýâ4ý¬â"C ód ¼>’*
+t‡°120201€ #ÐG,@š•
+( t$Hœ PK
+ j„<:„t‚m@
e % net/sf/jsr107cache/CacheManager.class Wkx W ~'ÙÝÙl6„ì %@ËVj
¹-´Õ JCHZ4 !m¨% ›Ùdp3³Ý™¥¤j© µŠõN
+
+¢xÁKÕ@Û$ ¼QW¼âýZ/ÕzéóðøÏúž™ÙÍî² ~ì9gÎw=ß÷~ç;ûìÿN F9šðb mØ+ã ”ao oÃÛ+ЊGÄðŽJ¼ ûd¼KÌ úñî 7ß#†÷ ð>¼_ ñA ûe<&ãC „°× b>èÇãbþp 58$ã° ñ㈌ úñ1 Gýøx ŸÀ'Åð© ŽáÓ~|
&€Ïâs < Ï +_ ñE?Æ+Јã~œðãI O øuHO˘
ŠI S ¬ ίÂI1Pø ¦e|
É / ͧeœ‘qÖ ¯ ÃW Xƒ¯‰áëb˜öã 2Î {Ã3 æw´¶õõô nîíÙÜÞÛ70ØÝÚÕ.!Ô¹SÙ¥D“Š>
+Ýb¥5}x„ª6C7-E·ú•dF•0oc{GëÖξÁ¬ GÖ¯Ù\qr\ß©«VÔLDwšéU+o +ñ 5Ú&Æ.EW†Õ4µúì]SBµc3ciÉh—’ ¤ M׬Û$”×è—ài3†TÁ§éjwft‡šîSv$Uá W’ýJZ ßî¦Ç ѨµrXµ6å
+ZV·â*\òSÆÞ’Ð\wi$fWAÙ
+û³[ ¥pUZ
+ÖLKM»Ê¢%”Í®K
+Ù w$ ]ÎduÖÝ %n é±Ë Óe¢\Y<)áš<—Ú’Šiv Ê 3¥Ù; jŠ™HöÄõ ={Y1©Û°:ŒŒ>Ô¾;®¦,ÍÐÉ[
+ Á¿®˜µM1|¶2H¡“8KS C BM)fM&Õa%ÙJK¦™ÏZ™p ì¤$ # Ä%4}(ïÐ j ¸ÙâQ¥™í£)kÌI
+k§ 4¶I ê„æ\:n, ¢ t}uÃîÓ†u#M¯¯ÍgVã™´f åŸÑ›J )
+,È+¡ÍÜRÓ–¦švdu:ìP5ƒqMe,ZU•Q qCOhÃ
+š( )!aNŽQì- ìÉ·+1d s´
+™DBM«C½ª ±2Q€ î™6
+ R-ñ¤[Ò -F&
+W
+£5ù Ø,ô щ. fÎs§bŽðZ ñÍ ¾
+gƒx ^
+Ä Ø$ãÛA| ߥ+³a>ˆïáû –’Þl&šóèÍù5 D
+÷ ñz$eü ˆóøa ?Â
+ÁË “„È•ª€—álJòx ƒÂ‰)Ë´ÍÈ$‡"ºaE ´"qa$ Y
+ÄOðS&‚‹Ÿá‚ˆÚÏ%,¹\ 1 m®0}Z
+ 2TÓÖ« ¦’ꨪ[‘Y Vº
+ ø ï´
+‹j[ˆ\©D%¬,:[*³#©Å#CjBÉ$H\t tFx I ij•ñ‹
~‰_ ñk‘ªß ñ[ð*ƒŒß ñ{üAÆ ƒø“Hå(¨ ñeЇø Ôæ c”(y ì_åIm‡@žƒ T®ŒXžùe ÄŸñ && /¯®D*þÊ
+Yª ƒø ž—ñ÷ þ!@
+.Q\lj]í}M›º;¢¦šÞ¥1fÑ ^À?³ ¹¤àx{•¨ï,Í»µ¯£iµðê_bøw ÿÁ 6–´Öì
+tƒbjñÂÌÏ
+{·R%Ì mÏŽ jÜâ]1sâ6ƒ g/[sL ¤
+]{@
+b! uE
+ Å%/€ª‚
+憮è>uì ܧî Ù «K°_¥‚ê¢J’ ‚N+YWâVß6K÷¸¤«ˆÆ¤«÷ϼLæÕ•tÀ§¤RªÎ«³ñªzˆƒ Ѽ-#Û§
+5çzMÉöÕ_ Ò¾ "ˆ¶«X4i^ÙïB ήÐ(Þ!†n©»‚¦:¿dL¨†ü[Æø> -Øž[ì £ Þ—Q’f‘ÓÙÄm+”±5: ?·ä å
+SM)i
+¸ ÚvóUfÚÏJÊÖÔ ¶;û©™4ÄA Ö•l™‚#\‚ ÞkIÃd6Ã4Þ«šv‹k5³Ô ³çð’¦\_Útéœ
+g˜Ýæ+vý"/ⱌëùào àÁ"lD;$tð« ~ß‘÷};ìŽÊuH´WÎ ¤± sìæW+ÿFñžE¸~ Rý4Ê &Q> ÏÓð
+· ôp ®@E
+ÌÇf{e‹à5¶â
+ôb‹«n‰M¡['à ç,Ùò>{w1Ç>lu97P§Ð:§þ)x NB.ÃYøÇs6
+™¥¶½ §kO¬úí#J¸ w»úzx rÎU¶¾Æ“¨(Ç]ÅGXF×o°UF
+æœÊ*W¥X
+` ¹%܃×r¦ré
+
+ÝCÚ‘úP` • V°«ÁÓ8
+ªî¦ Ì9‹êñ®iÔL#Ä †Có&0¿ ¿Ð ¸f Ï 0,Ê2,ž
+áÚ+iXZ‚ NÊ Àb̵ç ÔÚó½Ì‹˜ Äun8nb €åÜçª ¹l¤T ùš) Å:¬¤Ô*l'烸 {p‹
+¶^øÉ_MÚvj
+ók ¯c(—0
+vpo
+Wqqµ + ®öp5Œ ; GÜ Ë8 Í ùN ƬZÒùPsó) *øk¦ ™àßΆg
OñÿAÃDæØ9\CU1º´6 *59# ÛU¡Š Wõ
+.ôÂ
+ç -c o8 Ùsžò'Šð·>Oi8 –0 ,|]:JË
+£D€Pñ5Láå]õ “¸ñqx Ç©µ+›²:’˜¬ X!òV?³lpRHÆÆ J6
P5 Dç4¢ M“X óLc UÜ óÖzk= ¸¹ÖK™[b¾úZŸm©ºÖ “ å µò¸= CUÌïìøÏ
+ƒ¿Kxb ·1ëÏ.„hz «»›Îaã4Ö a± ¦ÐÚI´Lb]Ì#tÜ óÖ×z]KÞ˜Oì¯õÙ–Ö K ÎNÅ a%tû8*í
+ˆ±~¼ ûøµ Ús 1÷Ëñ0öÛ³ø>„WÚßb>ÏGÛEò]Ä íù0ž—ʸÿ ^²g'? òn /9/ÓYͼ„xÍ
+‰š RÛ™µNf«Ÿ÷Ò ïœ o
+Ýöãn<ÂòÞÇy? q€%~ ó! úaâ÷( |
Šè=Müž§Ô ¢ö9¢ôEbô"ç—0J ’R9ó/pq”uæeÖÓ´(ª 0aq5ÈK&ƒ]¤é¼1 ÕGëëq?v é-ô`Ì– ~>@¯ÊéEVö°½z#W (+*ÄK_šñ&žØC‹÷ºµwŠ”=ÔW.•ç$ˆ¾,F¹zÈÆ¨ oÎ]öËl
+ •Óh% 6< ßñ¢Kº†ã[ì"xøÿPK
+ j„<:«=Äù$  ( net/sf/jsr107cache/CacheStatistics.classm ÏJÃ@ Æ¿iÚFkÿ©èEÁ“
+4zò
+×Ts°
+&-x*ë²Ö” @v#øj
+| Jܤ
+ éÂòñÍüfvg~~¿¾aá
+G6z6ú„ã tC? } Ì\Æ&c—½Ì†£¡G
ŸÐbi¢4Oô”ǹ´` ál[ͽ „3o0 à #Âé6ìqâŽÝaèy U!ôçR šëHéH(Wˆ<ãâ“`]\š÷Û&;z]H¡Yš'šÐ4 ÆÅ»|
Š´ZæKû
+)%M #bɳuòєРÒ< r Å’Ð+KÖÐõ‚ pÂy"µ£Þœ
+ÊnoîDÁ8ÿHB·` ˜'sgù±ºÙ *f 'æV « £¡n¼½áwŒßÝð
+Ôª„=4 £•¶WÚYi ûåÒ ÊšÃ?PK
+ j„<: Íö’ç ˆ ) net/sf/jsr107cache/EvictionStrategy.class
+ ÏNÂ@ Æ¿ J±ø‡‹/€—6FWO
+z4p0 $Þ×e„mšÖl·$¼š À‡"ìÖž ã
+æKv¾ùåÛùÞ ~¡‹;ŒB\†¸"•aiyRX³#LãY&·Rä²X‹Å[ÆÊ¦¿_^’YÁVTï"«ÌãÓ’jÃâÙ÷†“ ÎWºRÒ¬Zî8þg#y%D¶¬Õ¦Ý TÎÒ º± ¼ÕÊ nÿæ¤ÉOÐÚê\Ìå‡ -ËÚ(žêœ
× Ðe±´Æ}x½»÷vÂÍ
ౕ0:>BŸ@èÀWÐs1Ñ œ è7 ¶:ÀY£ †Îéîâz PK
+ k„<: META-INF/maven/PK
+ k„<: " META-INF/maven/net.sf.jsr107cache/PK
+ k„<: . META-INF/maven/net.sf.jsr107cache/jsr107cache/PK
+ f„<:Æhg
+¸
+ 5 META-INF/maven/net.sf.jsr107cache/jsr107cache/pom.xmlÝVMoÛ0½çWh¹[rÚ Ï—aà ´ÛЮÃn
+j3±2[2$9I/ûí£$;± ¤-†} r°È'ò=†& ÔZ
³d[•Ò¼ž ÖÖsÆ*¾ Iyͳ ¨ÒKöùÓ » 1 § 9ß ±Co6 º9÷¸³8ž±oW—7x±â‘ Ær™ÁtB Þ˜ o¾T ·BÉg¤#§ Þ /î⻘nM>M1ER©
+ʯ
+FO}€„
+l ´Ôª©?ä© KÍ‚®ŒžÅ/3 9a ÏḶbÁ3‹Ç ¦gw0äô /
+\¦+® ¶?:çºÍ;£³„{$$¯` Ö[œ«ÑezBvÂœÓ r¨Aæ
3 Æ ú¦‡`èI]5RØ :ïî+ˆ¡6 êXŸÓW# Þm2UCjÁàíð
+ذ! ÞÙ3 ûF”»L®–eƒ¥3{KÏ:4îœ &¬NW¨Pµ6Ö êÑýžâÐS+¾æ¹Ê¢pÿXIF ºŠœÑóƒòŒ °
+¬qoŽ † Ó yÊEÅ
+eÔ*N Ü—Kñò‘ä \hhÿôxPöDÔ„=¡© 8 _ª¶ ] ·7Œjt ¿Ò ñ?kŽÀù9½Q Ü@ ¤püŸÛilé&)kçR;¥^D ù¨,̉ Èíõ%Ñ8̸
+œ XE@š Ÿ2¥µ[§8ìJõP ´¤æ¶ QÔ
+ia¬ ÷žÛ —Xh êQÁd=Æ_
+ 46 m²
+ Bbæª1–` á5’A€$? Θ kq Š«šl ¦o0†Û/»È
+ Ÿ Å(T¦ôÃhðbÇ„îYà æa
+Mvó޼}ÿƽaäz m¿Ózp·ÀLæ? àžŽÂÏY¡* o¥aÀ ÀŸß ¬°nÂ1Ý‹ÞîÂî?<’צPöú·j¼i£þa±
+ùGDŸÒ‡ûöD§M&Øîá«/ ü PK
+ k„<:3 %ze p < META-INF/maven/net.sf.jsr107cache/jsr107cache/pom.propertiesSvOÍK-J,IMQHªTðM,KÍãR ò¼ ó Œ, ͬŒMŒ \ƒC Œ,¹ÊR‹Š3óól
+õ¹Ò‹òK <SlóRKôŠÓô²Š‹
+Ì“ “3R¹ ‹J2Ó “K€²È PK
+ k„<: íA META-INF/PK
+ j„<:·ŸÎBf | ¤ ' META-INF/MANIFEST.MFPK
+ j„<: íA¿ net/PK
+ j„<: íAá net/sf/PK
+ j„<: íA net/sf/jsr107cache/PK
+ j„<:ó Þ î 7
+ ¤ 7 net/sf/jsr107cache/Cache.classPK
+ j„<:
+N ² ˜ # ¤ a net/sf/jsr107cache/CacheEntry.classPK
+ j„<:‰þL‘S j ' ¤ ® net/sf/jsr107cache/CacheException.classPK
+ j„<:q ȯ þ % ¤ F net/sf/jsr107cache/CacheFactory.classPK
+ j„<:ë
+†µ ô & ¤ 8 net/sf/jsr107cache/CacheListener.classPK
+ j„<:åm º© î $ ¤ 1 net/sf/jsr107cache/CacheLoader.classPK
+ j„<:„t‚m@ e % ¤
+ net/sf/jsr107cache/CacheManager.classPK
+ j„<:«=Äù$ Â ( ¤ Ÿ net/sf/jsr107cache/CacheStatistics.classPK
+ j„<: Íö’ç ˆ ) ¤
net/sf/jsr107cache/EvictionStrategy.classPK
+ k„<: íA7 META-INF/maven/PK
+ k„<: " íAd META-INF/maven/net.sf.jsr107cache/PK
+ k„<: . íA¤ META-INF/maven/net.sf.jsr107cache/jsr107cache/PK
+ f„<:Æhg
+¸
+ 5 ¤ ð META-INF/maven/net.sf.jsr107cache/jsr107cache/pom.xmlPK
+ k„<:3 %ze p < ¤ û META-INF/maven/net.sf.jsr107cache/jsr107cache/pom.propertiesPK Â º
=======================================
--- /dev/null
+++ /trunk/TestDrawing/war/WEB-INF/logging.properties Fri Jun 11 12:55:51
2010
@@ -0,0 +1,13 @@
+# A default java.util.logging configuration.
+# (All App Engine logging is through java.util.logging by default).
+#
+# To use this configuration, copy it into your application's WEB-INF
+# folder and add the following to your appengine-web.xml:
+#
+# <system-properties>
+# <property name="java.util.logging.config.file"
value="WEB-INF/logging.properties"/>
+# </system-properties>
+#
+
+# Set the default logging level for all loggers to WARNING
+.level = WARNING
=======================================
--- /dev/null
+++ /trunk/TestDrawing/war/WEB-INF/web.xml Fri Jun 11 12:55:51 2010
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="utf-8"?>
+<web-app xmlns:xsi="
http://www.w3.org/2001/XMLSchema-instance"
+xmlns="
http://java.sun.com/xml/ns/javaee"
+xmlns:web="
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
+xsi:schemaLocation="
http://java.sun.com/xml/ns/javaee
+
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" version="2.5">
+ <servlet>
+ <servlet-name>SubmitDrawing</servlet-name>
+ <servlet-class>net.ddaniels.SubmitDrawingServlet</servlet-class>
+ </servlet>
+ <servlet-mapping>
+ <servlet-name>SubmitDrawing</servlet-name>
+ <url-pattern>/SubmitDrawing</url-pattern>
+ </servlet-mapping>
+ <servlet>
+ <servlet-name>GetDrawing</servlet-name>
+ <servlet-class>net.ddaniels.GetDrawingServlet</servlet-class>
+ </servlet>
+ <servlet-mapping>
+ <servlet-name>GetDrawing</servlet-name>
+ <url-pattern>/GetDrawing</url-pattern>
+ </servlet-mapping>
+ <welcome-file-list>
+ <welcome-file>index.html</welcome-file>
+ </welcome-file-list>
+ <security-constraint>
+ <web-resource-collection>
+ <url-pattern>/*</url-pattern>
+ </web-resource-collection>
+ <auth-constraint>
+ <role-name>*</role-name>
+ </auth-constraint>
+ </security-constraint>
+ <security-constraint>
+ <web-resource-collection>
+ <url-pattern>/admin/*</url-pattern>
+ </web-resource-collection>
+ <auth-constraint>
+ <role-name>admin</role-name>
+ </auth-constraint>
+ </security-constraint>
+</web-app>
=======================================
--- /dev/null
+++ /trunk/TestDrawing/war/demo1.html Fri Jun 11 12:55:51 2010
@@ -0,0 +1,102 @@
+<!DOCTYPE html>
+<html lang="en">
+ <head>
+ <meta charset="utf-8">
+ <title>PaintWeb simple demo</title>
+ <link rel="author" type="text/html" href="
http://www.robodesign.ro"
+ title="Marius and Mihai Şucan, ROBO Design">
+
+ <!-- $URL:
http://code.google.com/p/paintweb $
+ $Date: 2009-08-24 14:14:53 +0300 $ -->
+ </head>
+ <body>
+ <h1>PaintWeb simple demo</h1>
+ <p>This is a demonstration page showing an image you can edit using <a
+ href="
http://code.google.com/p/paintweb">PaintWeb</a>.</p>
+
+
+ <p><button id="buttonEditImage">Edit image!</button></p>
+
+ <div id="PaintWebTarget"></div>
+
+ <p>Do you have any feedback to provide? Please <a
+ href="
http://moodle.org/mod/forum/discuss.php?d=126528">post it over
at
+ Moodle</a>!</p>
+
+ <!--[if lte IE 8]>
+ <p>Please note that this application does not work in Internet
Explorer. Any
+ other modern browser should work fine. Try <a
+ href="
http://www.google.com/chrome">Chrome</a>, <a
+ href="
http://www.mozilla.com">Firefox</a>, <a
+ href="
http://www.apple.com/safari">Safari</a>, <a
+ href="
http://www.opera.com">Opera</a> or <a
+ href="
http://www.konqueror.org">Konqueror</a>)</p>
+ <![endif]-->
+
+ <script type="text/javascript" src="paintweb/paintweb.js"></script>
+
+ <script type="text/javascript"><!--
+(function () {
+ // Function called when the user clicks the "Edit image" button.
+ function pwStart () {
+ document.body.insertBefore(loadp, btn.parentNode);
+
+ timeStart = (new Date()).getTime();
+ pw.init(pwInit);
+ };
+
+ // Function called when the PaintWeb application fires the "appInit"
event.
+ function pwInit (ev) {
+ var initTime = (new Date()).getTime() - timeStart,
+ str = 'Demo: Yay, PaintWeb loaded in ' + initTime + ' ms! ' +
+ pw.toString();
+
+ document.body.removeChild(loadp);
+
+ if (ev.state === PaintWeb.INIT_ERROR) {
+ alert('Demo: PaintWeb initialization failed.');
+ return;
+
+ } else if (ev.state === PaintWeb.INIT_DONE) {
+ if (window.console && console.log) {
+ console.log(str);
+ } else if (window.opera) {
+ opera.postError(str);
+ }
+
+ } else {
+ alert('Demo: Unrecognized PaintWeb initialization state ' +
ev.state);
+
+ return;
+ }
+
+ img.style.display = 'none';
+ btn.style.display = 'none';
+ };
+
+ //var img = document.getElementById('editableImage'),
+ var btn = document.getElementById('buttonEditImage'),
+ target = document.getElementById('PaintWebTarget'),
+ loadp = document.createElement('p'),
+ timeStart = null,
+
+ // Create a PaintWeb instance.
+ pw = new PaintWeb();
+
+ pw.config.guiPlaceholder = target;
+ // pw.config.imageLoad = img;
+ pw.config.configFile = 'config-example.json';
+ loadp.appendChild(document.createTextNode('Loading, please wait...'));
+
+ if (btn.addEventListener) {
+ btn.addEventListener('click', pwStart, false);
+ } else if (btn.attachEvent) {
+ btn.attachEvent('onclick', pwStart);
+ } else {
+ btn.onclick = pwStart;
+ }
+})();
+ --></script>
+ </body>
+ <!-- vim:set spell spl=en fo=tcroqwanl1 tw=80 ts=2 sw=2 sts=2 sta et ai
cin fenc=utf-8 ff=unix: -->
+</html>
=======================================
--- /dev/null
+++ /trunk/TestDrawing/war/freshalicious.jpg Fri Jun 11 12:55:51 2010
Binary file, no diff available.
=======================================
--- /dev/null
+++ /trunk/TestDrawing/war/images/no_image.png Fri Jun 11 12:55:51 2010
Binary file, no diff available.
=======================================
--- /dev/null
+++ /trunk/TestDrawing/war/index.html Fri Jun 11 12:55:51 2010
@@ -0,0 +1,91 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<!-- The HTML 4.01 Transitional DOCTYPE declaration-->
+<!-- above set at the top of the file will set -->
+<!-- the browser's rendering engine into -->
+<!-- "Quirks Mode". Replacing this declaration -->
+<!-- with a "Standards Mode" doctype is supported, -->
+<!-- but may lead to some differences in layout. -->
+<html>
+<head>
+ <meta http-equiv="content-type" content="text/html; charset=UTF-8">
+ <script type="text/javascript" src="paintweb/paintweb.js"></script>
+
+</head>
+
+<body>
+ <p><a title="Freshalicious"
+
href="
http://www.robodesign.ro/marius/my-projects/images/freshalicious"><img
+ id="editableImage" src="freshalicious.jpg"
alt="Freshalicious"></a></p>
+ <div id="PaintWebTarget"></div>
+ <a href="#" onClick="saveImage()">Submit image</a> | <a
href="submittedDrawings.jsp"> Submitted Drawings</a>
+ <script type="text/javascript">
+//(function () {
+
+ var pw = new PaintWeb();
+ var img = document.getElementById('editableImage')
+ var target = document.getElementById('PaintWebTarget');
+
+ function pwStart() {
+ img.style.display = 'none';
+ // the path to the file is relative to the base folder
+ pw.config.imageLoad = img;
+ pw.config.configFile = 'config-example.json';
+ pw.config.guiPlaceholder = target;
+ pw.init(pwInit);
+ }
+
+ function pwInit(ev) {
+ //alert("PaintWeb INIT");
+ if (ev.state === PaintWeb.INIT_DONE) {
+ //alert('PaintWeb loaded successfully!');
+ var saveEventID = pw.events.add('imageSave', saveHandler);
+
+ } else if (ev.state === PaintWeb.INIT_ERROR) {
+ alert('PaintWeb failed loading!');
+ }
+ }
+
+ function saveImage() {
+ // Save the image using the PNG format.
+ // Optionally you can also tell which image format you want.
+ pw.imageSave('image/png');
+ }
+
+ // The imageSave event handler.
+ function saveHandler (ev) {
+ // Cancel the default action of the event.
+ ev.preventDefault();
+
+ var handlerURL = '/SubmitDrawing',
+ send = 'dataURL=' + encodeURIComponent(ev.dataURL),
+ headers =
{'Content-Type': 'application/x-www-form-urlencoded'};
+
+ // Send the data URL to a server-side script which stores the image.
+ pwlib.xhrLoad(handlerURL, saveReady, 'POST', send, headers);
+ };
+
+ // The XMLHttpRequest onreadystatechange event handler.
+ function saveReady (xhr) {
+ if (!xhr || xhr.readyState !== 4) {
+ return;
+ }
+
+ if ((xhr.status !== 304 && xhr.status !== 200) ||
+ !xhr.responseText || xhr.responseText !== 'OK') {
+ // Image save failed.
+ pw.events.dispatch(new appEvent.imageSaveResult(false));
+ alert("Image save failed");
+ return;
+ }
+
+ // Image save was successful.
+ pw.events.dispatch(new appEvent.imageSaveResult(true));
+ };
+
+ pwStart();
+
+//})();
+ </script>
+</body>
+
+</html>
=======================================
--- /dev/null
+++ /trunk/TestDrawing/war/paintweb/colors/macos.json Fri Jun 11 12:55:51
2010
@@ -0,0 +1,1 @@
+[[1,1,1],[1,1,0.8],[1,1,0.6],[1,1,0.4],[1,1,0.2],[1,1,0],[1,0.8,1],[1,0.8,0.8],[1,0.8,0.6],[1,0.8,0.4],[1,0.8,0.2],[1,0.8,0],[1,0.6,1],[1,0.6,0.8],[1,0.6,0.6],[1,0.6,0.4],[1,0.6,0.2],[1,0.6,0],[1,0.4,1],[1,0.4,0.8],[1,0.4,0.6],[1,0.4,0.4],[1,0.4,0.2],[1,0.4,0],[1,0.2,1],[1,0.2,0.8],[1,0.2,0.6],[1,0.2,0.4],[1,0.2,0.2],[1,0.2,0],[1,0,1],[1,0,0.8],[1,0,0.6],[1,0,0.4],[1,0,0.2],[1,0,0],[0.8,1,1],[0.8,1,0.8],[0.8,1,0.6],[0.8,1,0.4],[0.8,1,0.2],[0.8,1,0],[0.8,0.8,1],[0.8,0.8,0.8],[0.8,0.8,0.6],[0.8,0.8,0.4],[0.8,0.8,0.2],[0.8,0.8,0],[0.8,0.6,1],[0.8,0.6,0.8],[0.8,0.6,0.6],[0.8,0.6,0.4],[0.8,0.6,0.2],[0.8,0.6,0],[0.8,0.4,1],[0.8,0.4,0.8],[0.8,0.4,0.6],[0.8,0.4,0.4],[0.8,0.4,0.2],[0.8,0.4,0],[0.8,0.2,1],[0.8,0.2,0.8],[0.8,0.2,0.6],[0.8,0.2,0.4],[0.8,0.2,0.2],[0.8,0.2,0],[0.8,0,1],[0.8,0,0.8],[0.8,0,0.6],[0.8,0,0.4],[0.8,0,0.2],[0.8,0,0],[0.6,1,1],[0.6,1,0.8],[0.6,1,0.6],[0.6,1,0.4],[0.6,1,0.2],[0.6,1,0],[0.6,0.8,1],[0.6,0.8,0.8],[0.6,0.8,0.6],[0.6,0.8,0.4],[0.6,0.8,0.2],[0.6,0.8,0],[0.6,0.6,1],[0.6,0.6,0.8],[0.6,0.6,0.6],[0.6,0.6,0.4],[0.6,0.6,0.2],[0.6,0.6,0],[0.6,0.4,1],[0.6,0.4,0.8],[0.6,0.4,0.6],[0.6,0.4,0.4],[0.6,0.4,0.2],[0.6,0.4,0],[0.6,0.2,1],[0.6,0.2,0.8],[0.6,0.2,0.6],[0.6,0.2,0.4],[0.6,0.2,0.2],[0.6,0.2,0],[0.6,0,1],[0.6,0,0.8],[0.6,0,0.6],[0.6,0,0.4],[0.6,0,0.2],[0.6,0,0],[0.4,1,1],[0.4,1,0.8],[0.4,1,0.6],[0.4,1,0.4],[0.4,1,0.2],[0.4,1,0],[0.4,0.8,1],[0.4,0.8,0.8],[0.4,0.8,0.6],[0.4,0.8,0.4],[0.4,0.8,0.2],[0.4,0.8,0],[0.4,0.6,1],[0.4,0.6,0.8],[0.4,0.6,0.6],[0.4,0.6,0.4],[0.4,0.6,0.2],[0.4,0.6,0],[0.4,0.4,1],[0.4,0.4,0.8],[0.4,0.4,0.6],[0.4,0.4,0.4],[0.4,0.4,0.2],[0.4,0.4,0],[0.4,0.2,1],[0.4,0.2,0.8],[0.4,0.2,0.6],[0.4,0.2,0.4],[0.4,0.2,0.2],[0.4,0.2,0],[0.4,0,1],[0.4,0,0.8],[0.4,0,0.6],[0.4,0,0.4],[0.4,0,0.2],[0.4,0,0],[0.2,1,1],[0.2,1,0.8],[0.2,1,0.6],[0.2,1,0.4],[0.2,1,0.2],[0.2,1,0],[0.2,0.8,1],[0.2,0.8,0.8],[0.2,0.8,0.6],[0.2,0.8,0.4],[0.2,0.8,0.2],[0.2,0.8,0],[0.2,0.6,1],[0.2,0.6,0.8],[0.2,0.6,0.6],[0.2,0.6,0.4],[0.2,0.6,0.2],[0.2,0.6,0],[0.2,0.4,1],[0.2,0.4,0.8],[0.2,0.4,0.6],[0.2,0.4,0.4],[0.2,0.4,0.2],[0.2,0.4,0],[0.2,0.2,1],[0.2,0.2,0.8],[0.2,0.2,0.6],[0.2,0.2,0.4],[0.2,0.2,0.2],[0.2,0.2,0],[0.2,0,1],[0.2,0,0.8],[0.2,0,0.6],[0.2,0,0.4],[0.2,0,0.2],[0.2,0,0],[0,1,1],[0,1,0.8],[0,1,0.6],[0,1,0.4],[0,1,0.2],[0,1,0],[0,0.8,1],[0,0.8,0.8],[0,0.8,0.6],[0,0.8,0.4],[0,0.8,0.2],[0,0.8,0],[0,0.6,1],[0,0.6,0.8],[0,0.6,0.6],[0,0.6,0.4],[0,0.6,0.2],[0,0.6,0],[0,0.4,1],[0,0.4,0.8],[0,0.4,0.6],[0,0.4,0.4],[0,0.4,0.2],[0,0.4,0],[0,0.2,1],[0,0.2,0.8],[0,0.2,0.6],[0,0.2,0.4],[0,0.2,0.2],[0,0.2,0],[0,0,1],[0,0,0.8],[0,0,0.6],[0,0,0.4],[0,0,0.2],[0.9333333333333333,0,0],[0.8666666666666667,0,0],[0.7333333333333333,0,0],[0.6666666666666666,0,0],[0.5333333333333333,0,0],[0.4666666666666667,0,0],[0.3333333333333333,0,0],[0.26666666666666666,0,0],[0.13333333333333333,0,0],[0.06666666666666667,0,0],[0,0.9333333333333333,0],[0,0.8666666666666667,0],[0,0.7333333333333333,0],[0,0.6666666666666666,0],[0,0.5333333333333333,0],[0,0.4666666666666667,0],[0,0.3333333333333333,0],[0,0.26666666666666666,0],[0,0.13333333333333333,0],[0,0.06666666666666667,0],[0,0,0.9333333333333333],[0,0,0.8666666666666667],[0,0,0.7333333333333333],[0,0,0.6666666666666666],[0,0,0.5333333333333333],[0,0,0.4666666666666667],[0,0,0.3333333333333333],[0,0,0.26666666666666666],[0,0,0.13333333333333333],[0,0,0.06666666666666667],[0.9333333333333333,0.9333333333333333,0.9333333333333333],[0.8666666666666667,0.8666666666666667,0.8666666666666667],[0.7333333333333333,0.7333333333333333,0.7333333333333333],[0.6666666666666666,0.6666666666666666,0.6666666666666666],[0.5333333333333333,0.5333333333333333,0.5333333333333333],[0.4666666666666667,0.4666666666666667,0.4666666666666667],[0.3333333333333333,0.3333333333333333,0.3333333333333333],[0.26666666666666666,0.26666666666666666,0.26666666666666666],[0.13333333333333333,0.13333333333333333,0.13333333333333333],[0.06666666666666667,0.06666666666666667,0.06666666666666667],[0,0,0]]
=======================================
--- /dev/null
+++ /trunk/TestDrawing/war/paintweb/colors/web.json Fri Jun 11 12:55:51 2010
@@ -0,0 +1,1 @@
+[[1,0.8,0.8],[1,0.8,0.8],[1,0.8,0.8],[1,0.8,0.8],[1,0.8,0.8],[1,1,0.8],[0.8,1,0.8],[0.8,1,0.8],[0.8,1,0.8],[0.8,1,0.8],[0.8,1,0.8],[0.8,1,0.8],[0.8,1,0.8],[0.8,1,0.8],[0.8,1,0.8],[0.8,1,1],[1,0.6,0.6],[1,0.6,0.6],[1,0.6,0.6],[1,0.6,0.6],[1,0.8,0.6],[1,1,0.6],[0.8,1,0.6],[0.6,1,0.6],[0.6,1,0.6],[0.6,1,0.6],[0.6,1,0.6],[0.6,1,0.6],[0.6,1,0.6],[0.6,1,0.6],[0.6,1,0.8],[0.6,1,1],[1,0.4,0.4],[1,0.4,0.4],[1,0.4,0.4],[1,0.6,0.4],[1,0.8,0.4],[1,1,0.4],[0.8,1,0.4],[0.6,1,0.4],[0.4,1,0.4],[0.4,1,0.4],[0.4,1,0.4],[0.4,1,0.4],[0.4,1,0.4],[0.4,1,0.6],[0.4,1,0.8],[0.4,1,1],[1,0.2,0.2],[1,0.2,0.2],[1,0.4,0.2],[1,0.6,0.2],[1,0.8,0.2],[1,1,0.2],[0.8,1,0.2],[0.6,1,0.2],[0.4,1,0.2],[0.2,1,0.2],[0.2,1,0.2],[0.2,1,0.2],[0.2,1,0.4],[0.2,1,0.6],[0.2,1,0.8],[0.2,1,1],[1,0,0],[1,0.2,0],[1,0.4,0],[1,0.6,0],[1,0.8,0],[1,1,0],[0.8,1,0],[0.6,1,0],[0.2,1,0],[0.2,1,0],[0,1,0],[0,1,0.2],[0,1,0.4],[0,1,0.6],[0,1,0.8],[0,1,1],[0.8,0,0],[0.8,0.2,0],[0.8,0.4,0],[0.8,0.6,0],[0.8,0.8,0],[0.8,0.8,0],[0.8,0.8,0],[0.6,0.8,0],[0.4,0.8,0],[0.2,0.8,0],[0,0.8,0],[0,0.8,0.2],[0,0.8,0.4],[0,0.8,0.6],[0,0.8,0.8],[0,0.8,0.8],[0.6,0,0],[0.6,0.2,0],[0.6,0.4,0],[0.6,0.6,0],[0.6,0.6,0],[0.6,0.6,0],[0.6,0.6,0],[0.6,0.6,0],[0.4,0.6,0],[0.2,0.6,0],[0,0.6,0],[0,0.6,0.2],[0,0.6,0.4],[0,0.6,0.6],[0,0.6,0.6],[0,0.6,0.6],[0.4,0,0],[0.4,0.2,0],[0.4,0.4,0],[0.4,0.4,0],[0.4,0.4,0],[0.4,0.4,0],[0.4,0.4,0],[0.4,0.4,0],[0.4,0.4,0],[0.2,0.4,0],[0,0.4,0],[0,0.4,0.2],[0,0.4,0.4],[0,0.4,0.4],[0,0.4,0.4],[0,0.4,0.4],[0.2,0,0],[0.2,0.2,0],[0.2,0.2,0],[0.2,0.2,0],[0.2,0.2,0],[0.2,0.2,0],[0.2,0.2,0],[0.2,0.2,0],[0.2,0.2,0],[0.2,0.2,0],[0,0.2,0],[0,0.2,0.2],[0,0.2,0.2],[0,0.2,0.2],[0,0.2,0.2],[0,0.2,0.2],[0.2,0,0],[0.2,0,0.2],[0.2,0,0.2],[0.2,0,0.2],[0.2,0,0.2],[0.2,0,0.2],[0.2,0,0.2],[0.2,0,0.2],[0.2,0,0.2],[0.2,0,0.2],[0,0,0.2],[0,0.2,0.2],[0,0.2,0.2],[0,0.2,0.2],[0,0.2,0.2],[0,0.2,0.2],[0.4,0,0],[0.4,0,0.2],[0.4,0,0.4],[0.4,0,0.4],[0.4,0,0.4],[0.4,0,0.4],[0.4,0,0.4],[0.4,0,0.4],[0.4,0,0.4],[0.2,0,0.4],[0,0,0.4],[0,0.2,0.4],[0,0.4,0.4],[0,0.4,0.4],[0,0.4,0.4],[0,0.4,0.4],[0.6,0,0],[0.6,0,0.2],[0.6,0,0.4],[0.6,0,0.6],[0.6,0,0.6],[0.6,0,0.6],[0.6,0,0.6],[0.6,0,0.6],[0.4,0,0.6],[0.2,0,0.6],[0,0,0.6],[0,0.2,0.6],[0,0.4,0.6],[0,0.6,0.6],[0,0.6,0.6],[0,0.6,0.6],[0.8,0,0],[0.8,0,0.2],[0.8,0,0.4],[0.8,0,0.6],[0.8,0,0.8],[0.8,0,0.8],[0.8,0,0.8],[0.6,0,0.8],[0.4,0,0.8],[0.2,0,0.8],[0,0,0.8],[0,0.2,0.8],[0,0.4,0.8],[0,0.6,0.8],[0,0.8,0.8],[0,0.8,0.8],[1,0,0],[1,0,0.2],[1,0,0.4],[1,0,0.6],[1,0,0.8],[1,0,1],[0.8,0,1],[0.6,0,1],[0.4,0,1],[0.2,0,1],[0,0,1],[0,0.2,1],[0,0.4,1],[0,0.6,1],[0,0.8,1],[0,1,1],[1,0.2,0.2],[1,0.2,0.2],[1,0.2,0.4],[1,0.2,0.6],[1,0.2,0.8],[1,0.2,1],[0.8,0.2,1],[0.6,0.2,1],[0.4,0.2,1],[0.2,0.2,1],[0.2,0.2,1],[0.2,0.2,1],[0.2,0.4,1],[0.2,0.6,1],[0.2,0.8,1],[0.2,1,1],[1,0.4,0.4],[1,0.4,0.4],[1,0.4,0.4],[1,0.4,0.6],[1,0.4,0.8],[1,0.4,1],[0.8,0.4,1],[0.6,0.4,1],[0.4,0.4,1],[0.4,0.4,1],[0.4,0.4,1],[0.4,0.4,1],[0.4,0.4,1],[0.4,0.6,1],[0.4,0.8,1],[0.4,1,1],[1,0.6,0.6],[1,0.6,0.6],[1,0.6,0.6],[1,0.6,0.6],[1,0.6,0.8],[1,0.6,1],[0.8,0.6,1],[0.6,0.6,1],[0.6,0.6,1],[0.6,0.6,1],[0.6,0.6,1],[0.6,0.6,1],[0.6,0.6,1],[0.6,0.6,1],[0.6,0.8,1],[0.6,1,1],[1,0.8,0.8],[1,0.8,0.8],[1,0.8,0.8],[1,0.8,0.8],[1,0.8,0.8],[1,0.8,1],[0.8,0.8,1],[0.8,0.8,1],[0.8,0.8,1],[0.8,0.8,1],[0.8,0.8,1],[0.8,0.8,1],[0.8,0.8,1],[0.8,0.8,1],[0.8,0.8,1],[0.8,1,1],[0,0,0],[0.2,0.2,0.2],[0.4,0.4,0.4],[0.6,0.6,0.6],[0.8,0.8,0.8],[1,1,1],[0.8,0.6,0.6],[0.8,0.4,0.4],[0.8,0.2,0.2],[0.6,0.2,0.2],[0.4,0.2,0.2],[0.8,0.4,0.2],[0.8,0.4,0.2],[0.8,0.6,0.4],[0.8,0.6,0.2],[0.8,0.8,0.2],[0.6,0.6,0.4],[0.6,0.6,0.2],[0.8,0.8,0.4],[0.6,0.8,0.4],[0.4,0.6,0.2],[0.4,0.8,0.2],[0.4,0.8,0.4],[0.4,0.6,0.4],[0.4,0.6,0.4],[0.2,0.6,0.2],[0.2,0.4,0.2],[0.2,0.8,0.4],[0.2,0.8,0.4],[0.2,0.8,0.6],[0.2,0.8,0.6],[0.2,0.8,0.8],[0.6,0.8,0.8],[0.2,0.6,0.6],[0.4,0.8,0.8],[0.2,0.4,0.4],[0.2,0.4,0.6],[0.4,0.4,0.6],[0.4,0.4,0.8],[0.4,0.4,0.8],[0.2,0.2,0.6],[0.4,0.2,0.8],[0.4,0.2,0.6],[0.6,0.4,0.8],[0.6,0.2,0.8],[0.8,0.6,0.8],[0.4,0.2,0.4],[0.6,0.4,0.6],[0.8,0.2,0.8],[0.8,0.2,0.6],[0.8,0.4,0.6],[0.6,0.2,0.4],[0.8,0.2,0.4]]
=======================================
***Additional files exist in this changeset.***