[wsas-java-dev] svn commit r1796 - in trunk/wsas/java/modules/samples: FlickrClient FlickrClient/conf FlickrClient/generated FlickrClient/src FlickrClient/src/org FlickrClient/src/org/wso2 FlickrClient/src/org/wso2/wsas FlickrClient/src/org/wso2/wsas/sample FlickrClient/src/org/wso2/wsas/sample/flickr FlickrClient/src/org/wso2/wsas/sample/flickr/client FlickrClient/wsdl conf

svn at wso2.org svn at wso2.org
Sun Apr 8 09:57:38 PDT 2007


Author: keith
Date: Sun Apr  8 09:57:37 2007
New Revision: 1796

Added:
   trunk/wsas/java/modules/samples/FlickrClient/
   trunk/wsas/java/modules/samples/FlickrClient/build.xml
   trunk/wsas/java/modules/samples/FlickrClient/conf/
   trunk/wsas/java/modules/samples/FlickrClient/conf/axis2.xml
   trunk/wsas/java/modules/samples/FlickrClient/generated/
   trunk/wsas/java/modules/samples/FlickrClient/pom.xml
   trunk/wsas/java/modules/samples/FlickrClient/run-client.bat
   trunk/wsas/java/modules/samples/FlickrClient/run-client.sh
   trunk/wsas/java/modules/samples/FlickrClient/src/
   trunk/wsas/java/modules/samples/FlickrClient/src/org/
   trunk/wsas/java/modules/samples/FlickrClient/src/org/wso2/
   trunk/wsas/java/modules/samples/FlickrClient/src/org/wso2/wsas/
   trunk/wsas/java/modules/samples/FlickrClient/src/org/wso2/wsas/sample/
   trunk/wsas/java/modules/samples/FlickrClient/src/org/wso2/wsas/sample/flickr/
   trunk/wsas/java/modules/samples/FlickrClient/src/org/wso2/wsas/sample/flickr/client/
   trunk/wsas/java/modules/samples/FlickrClient/src/org/wso2/wsas/sample/flickr/client/Client.java
   trunk/wsas/java/modules/samples/FlickrClient/src/org/wso2/wsas/sample/flickr/client/FlickrServiceClient.java
   trunk/wsas/java/modules/samples/FlickrClient/src/org/wso2/wsas/sample/flickr/client/FlickrServiceFrame.java
   trunk/wsas/java/modules/samples/FlickrClient/wsdl/
   trunk/wsas/java/modules/samples/FlickrClient/wsdl/FlickrService.wsdl
Modified:
   trunk/wsas/java/modules/samples/conf/wsas-samples-codegen.xml
Log:
Adding FlickrClient sample WSDL 2.0 codegenaration


Added: trunk/wsas/java/modules/samples/FlickrClient/build.xml
==============================================================================
--- (empty file)
+++ trunk/wsas/java/modules/samples/FlickrClient/build.xml	Sun Apr  8 09:57:37 2007
@@ -0,0 +1,35 @@
+<project default="compile-all">
+
+    <property name="wso2wsas.home" value="../../"/>
+    <property name="lib" value="${wso2wsas.home}/lib"/>
+    <property name="repo.location" value="${wso2wsas.home}/repository"/>
+    <property name="temp.dir" value="temp"/>
+    <property name="classes" value="${temp.dir}/classes"/>
+    <property name="src" value="src"/>
+    <property name="gen.src" value="generated/src"/>
+
+    <path id="axis2.class.path">
+        <pathelement path="${java.class.path}"/>
+        <fileset dir="${wso2wsas.home}">
+            <include name="lib/*.jar"/>
+        </fileset>
+    </path>
+
+    <target name="init" depends="clean">
+
+        <mkdir dir="${temp.dir}"/>
+        <mkdir dir="${classes}"/>
+    </target>
+
+    <target name="clean">
+        <delete dir="${temp.dir}"/>
+    </target>
+
+    <target name="compile-all" depends="init">
+        <javac debug="on" destdir="${classes}">
+            <src path="${src}"/>
+            <src path="${gen.src}"/>
+            <classpath refid="axis2.class.path"/>
+        </javac>
+    </target>
+</project>

Added: trunk/wsas/java/modules/samples/FlickrClient/conf/axis2.xml
==============================================================================
--- (empty file)
+++ trunk/wsas/java/modules/samples/FlickrClient/conf/axis2.xml	Sun Apr  8 09:57:37 2007
@@ -0,0 +1,186 @@
+<axisconfig name="AxisJava2.0">
+    <!-- ================================================= -->
+    <!-- Parameters -->
+    <!-- ================================================= -->
+    <parameter name="hotdeployment" locked="false">true</parameter>
+    <parameter name="hotupdate" locked="false">true</parameter>
+    <parameter name="enableMTOM" locked="false">false</parameter>
+    <parameter name="cacheAttachments" locked="false">false</parameter>
+
+    <parameter name="Sandesha2StorageManager" locked="false">inmemory</parameter>
+
+    <!--Set the flag to true if you want to enable transport level session mangment-->
+    <parameter name="manageTransportSession" locked="false">true</parameter>
+
+    <!-- ================================================= -->
+    <!-- Message Receivers -->
+    <!-- ================================================= -->
+    <!--This is the Default Message Receiver for the system , if you want to have MessageReceivers for -->
+    <!--all the other MEP implement it and add the correct entry to here , so that you can refer from-->
+    <!--any operation -->
+    <!--Note : You can ovride this for particular service by adding the same element with your requirement-->
+    <messageReceivers>
+        <messageReceiver mep="http://www.w3.org/ns/wsdl/in-only"
+                         class="org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver"/>
+        <messageReceiver mep="http://www.w3.org/ns/wsdl/robust-in-only"
+                         class="org.apache.axis2.rpc.receivers.RPCInOnlyMessageReceiver"/>
+        <messageReceiver mep="http://www.w3.org/ns/wsdl/in-out"
+                         class="org.apache.axis2.rpc.receivers.RPCMessageReceiver"/>
+    </messageReceivers>
+
+    <!-- ================================================= -->
+    <!-- Message Formatter -->
+    <!-- ================================================= -->
+    <!--Following content type to message formatter mapping can be used to implement support for different message -->
+    <!--format  serialization in Axis2. These message formats are expected to be resolved based on the content type. -->
+    <messageFormatters>
+        <messageFormatter contentType="application/x-www-form-urlencoded"
+                          class="org.apache.axis2.transport.http.XFormURLEncodedFormatter"/>
+        <messageFormatter contentType="multipart/form-data"
+                          class="org.apache.axis2.transport.http.MultipartFormDataFormatter"/>
+        <messageFormatter contentType="application/xml"
+                          class="org.apache.axis2.transport.http.ApplicationXMLFormatter"/>
+    </messageFormatters>
+
+    <messageBuilders>
+        <messageBuilder contentType="application/xml"
+                        class="org.apache.axis2.builder.ApplicationXMLBuilder"/>
+        <messageBuilder contentType="text/xml"
+                        class="org.apache.axis2.builder.ApplicationXMLBuilder"/>
+        <messageBuilder contentType="application/x-www-form-urlencoded"
+                        class="org.apache.axis2.builder.XFormURLEncodedBuilder"/>
+        <messageBuilder contentType="multipart/form-data"
+                        class="org.apache.axis2.builder.MultipartFormDataBuilder"/>
+    </messageBuilders>
+
+
+    <!-- ================================================= -->
+    <!-- Transport Ins -->
+    <!-- ================================================= -->
+
+    <!-- setting contextPath and servicePath-->
+    <parameter name="contextRoot" locked="false">/</parameter>
+    <parameter name="servicePath" locked="false">services</parameter>
+
+    <transportReceiver name="http" class="org.apache.axis2.transport.http.SimpleHTTPServer">
+        <parameter name="port" locked="false">6060</parameter>
+    </transportReceiver>
+
+    <transportReceiver name="tcp" class="org.apache.axis2.transport.tcp.TCPServer">
+        <parameter name="port" locked="false">6061</parameter>
+    </transportReceiver>
+
+    <!--<transportReceiver name="mailto" class="org.apache.axis2.transport.mail.SimpleMailListener">
+        <parameter name="mail.pop3.host" locked="false">localhost</parameter>
+        <parameter name="mail.pop3.user" locked="false">blue</parameter>
+        <parameter name="transport.mail.pop3.password" locked="false">blue</parameter>
+        <parameter name="mail.store.protocol" locked="false">pop3</parameter>
+        <parameter name="transport.mail.replyToAddress" locked="false">blue at localhost</parameter>
+        <parameter name="transport.listener.interval">3000</parameter>
+    </transportReceiver>-->
+
+    <!-- ================================================= -->
+    <!-- Transport Outs -->
+    <!-- ================================================= -->
+
+    <transportSender name="http" class="org.apache.axis2.transport.http.CommonsHTTPTransportSender">
+        <parameter name="PROTOCOL" locked="false">HTTP/1.1</parameter>
+    </transportSender>
+    <transportSender name="https"
+                     class="org.apache.axis2.transport.http.CommonsHTTPTransportSender">
+        <parameter name="PROTOCOL" locked="false">HTTP/1.1</parameter>
+        <parameter name="Transfer-Encoding" locked="false">chunked</parameter>
+    </transportSender>
+    <transportSender name="tcp" class="org.apache.axis2.transport.tcp.TCPTransportSender"/>
+    <transportSender name="local" class="org.apache.axis2.transport.local.LocalTransportSender"/>
+    <transportSender name="jms" class="org.apache.axis2.transport.jms.JMSSender"/>
+
+    <!--<transportSender name="mailto" class="org.apache.axis2.transport.mail.MailTransportSender">
+        <parameter name="mail.smtp.host" locked="false">localhost</parameter>
+    </transportSender>-->
+
+    <!-- ================================================= -->
+    <!-- Phases  -->
+    <!-- ================================================= -->
+    <phaseOrder type="InFlow">
+        <!--  System pre defined phases       -->
+        <phase name="Transport">
+            <handler name="RequestURIBasedDispatcher"
+                     class="org.apache.axis2.engine.RequestURIBasedDispatcher">
+                <order phase="Dispatch"/>
+            </handler>
+            <handler name="SOAPActionBasedDispatcher"
+                     class="org.apache.axis2.engine.SOAPActionBasedDispatcher">
+                <order phase="Dispatch"/>
+            </handler>
+        </phase>
+        <phase name="Security"/>
+        <phase name="PreDispatch"/>
+        <phase name="Dispatch" class="org.apache.axis2.engine.DispatchPhase">
+            <handler name="AddressingBasedDispatcher"
+                     class="org.apache.axis2.engine.AddressingBasedDispatcher">
+                <order phase="Dispatch"/>
+            </handler>
+
+            <handler name="SOAPMessageBodyBasedDispatcher"
+                     class="org.apache.axis2.engine.SOAPMessageBodyBasedDispatcher">
+                <order phase="Dispatch"/>
+            </handler>
+            <handler name="InstanceDispatcher"
+                     class="org.apache.axis2.engine.InstanceDispatcher">
+                <order phase="PostDispatch"/>
+            </handler>
+        </phase>
+
+        <!--  System pre defined phases       -->
+        <!--   After Postdispatch phase module author or or service author can add any phase he want      -->
+        <phase name="RMPhase"/>
+        <phase name="OpPhase"/>
+    </phaseOrder>
+    <phaseOrder type="OutFlow">
+        <!--      serviceUser can add his own phases to this area  -->
+        <phase name="OpPhase"/>
+        <phase name="RMPhase"/>
+        <!--system predefined phase-->
+        <!--these phase will run irrespective of the service-->
+        <phase name="PolicyDetermination"/>
+        <phase name="MessageOut"/>
+        <phase name="Security"/>
+    </phaseOrder>
+    <phaseOrder type="InFaultFlow">
+        <phase name="PreDispatch"/>
+        <phase name="Dispatch" class="org.apache.axis2.engine.DispatchPhase">
+            <handler name="RequestURIBasedDispatcher"
+                     class="org.apache.axis2.engine.RequestURIBasedDispatcher">
+                <order phase="Dispatch"/>
+            </handler>
+
+            <handler name="SOAPActionBasedDispatcher"
+                     class="org.apache.axis2.engine.SOAPActionBasedDispatcher">
+                <order phase="Dispatch"/>
+            </handler>
+
+            <handler name="AddressingBasedDispatcher"
+                     class="org.apache.axis2.engine.AddressingBasedDispatcher">
+                <order phase="Dispatch"/>
+            </handler>
+
+            <handler name="SOAPMessageBodyBasedDispatcher"
+                     class="org.apache.axis2.engine.SOAPMessageBodyBasedDispatcher">
+                <order phase="Dispatch"/>
+            </handler>
+            <handler name="InstanceDispatcher"
+                     class="org.apache.axis2.engine.InstanceDispatcher">
+                <order phase="PostDispatch"/>
+            </handler>
+        </phase>
+        <!--      serviceUser can add his own phases to this area  -->
+        <phase name="RMPhase"/>
+    </phaseOrder>
+    <phaseOrder type="OutFaultFlow">
+        <!--      serviceUser can add his own phases to this area  -->
+        <phase name="RMPhase"/>
+        <phase name="PolicyDetermination"/>
+        <phase name="MessageOut"/>
+    </phaseOrder>
+</axisconfig>

Added: trunk/wsas/java/modules/samples/FlickrClient/pom.xml
==============================================================================
--- (empty file)
+++ trunk/wsas/java/modules/samples/FlickrClient/pom.xml	Sun Apr  8 09:57:37 2007
@@ -0,0 +1,53 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+
+    <parent>
+        <groupId>org.wso2.wsas</groupId>
+        <artifactId>wso2wsas-samples</artifactId>
+        <version>1.2-SNAPSHOT</version>
+    </parent>
+
+    <modelVersion>4.0.0</modelVersion>
+    <artifactId>wso2wsas-samples-FlickrClient</artifactId>
+    <packaging>jar</packaging>
+    <version>1.2-SNAPSHOT</version>
+    <name>WSO2 Web Services Application Server - Sample/Flickr Client</name>
+    <build>
+        <sourceDirectory>src</sourceDirectory>
+        <testSourceDirectory>test</testSourceDirectory>
+        <plugins>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-compiler-plugin</artifactId>
+                <configuration>
+                    <source>1.4</source>
+                    <target>1.4</target>
+                </configuration>
+            </plugin>
+
+            <plugin>
+                <groupId>org.codehaus.mojo</groupId>
+                <artifactId>build-helper-maven-plugin</artifactId>
+                <version>1.0</version>
+                <executions>
+                    <execution>
+                        <id>copy-code</id>
+                        <phase>generate-sources</phase>
+                        <goals>
+                            <goal>add-source</goal>
+                        </goals>
+                        <configuration>
+                            <sources>
+                                <source>${basedir}/generated/src</source>
+                            </sources>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+
+        </plugins>
+
+    </build>
+
+</project>

Added: trunk/wsas/java/modules/samples/FlickrClient/run-client.bat
==============================================================================
--- (empty file)
+++ trunk/wsas/java/modules/samples/FlickrClient/run-client.bat	Sun Apr  8 09:57:37 2007
@@ -0,0 +1,81 @@
+ at echo off
+REM ---------------------------------------------------------------------------
+REM  Copyright 2005,2006 WSO2, Inc. http://www.wso2.org
+REM
+REM  Licensed under the Apache License, Version 2.0 (the "License");
+REM  you may not use this file except in compliance with the License.
+REM  You may obtain a copy of the License at
+REM
+REM      http://www.apache.org/licenses/LICENSE-2.0
+REM
+REM  Unless required by applicable law or agreed to in writing, software
+REM  distributed under the License is distributed on an "AS IS" BASIS,
+REM  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+REM  See the License for the specific language governing permissions and
+REM  limitations under the License.
+
+rem ---------------------------------------------------------------------------
+rem Client script for the FlickrClient Sample 
+rem
+rem Environment Variable Prequisites
+rem
+rem   WSO2WSAS_HOME      Must point at your WSO2 WSAS directory
+rem
+rem   JAVA_HOME       Must point at your Java Development Kit installation.
+rem
+rem   JAVA_OPTS       (Optional) Java runtime options
+rem ---------------------------------------------------------------------------
+set CURRENT_DIR=%cd%
+
+rem Make sure prerequisite environment variables are set
+if not "%JAVA_HOME%" == "" goto gotJavaHome
+echo The JAVA_HOME environment variable is not defined
+echo This environment variable is needed to run this program
+goto end
+:gotJavaHome
+if not exist "%JAVA_HOME%\bin\java.exe" goto noJavaHome
+goto okJavaHome
+:noJavaHome
+echo The JAVA_HOME environment variable is not defined correctly
+echo This environment variable is needed to run this program
+echo NB: JAVA_HOME should point to a JDK/JRE
+goto end
+:okJavaHome
+
+rem check the WSO2WSAS_HOME environment variable
+if not "%WSO2WSAS_HOME%" == "" goto gotHome
+set WSO2WSAS_HOME=%CURRENT_DIR%
+if exist "%WSO2WSAS_HOME\bin\version.txt" goto okHome
+
+rem guess the home. Jump two directories up to check if that is the home
+cd ..\..
+set WSO2WSAS_HOME=%cd%
+cd %CURRENT_DIR%
+
+:gotHome
+if exist "%WSO2WSAS_HOME%\bin\version.txt" goto okHome
+
+set WSO2WSAS_HOME=%~dp0..\..
+if exist "%WSO2WSAS_HOME%\bin\version.txt" goto okHome
+
+echo The WSO2WSAS_HOME environment variable is not defined correctly
+echo This environment variable is needed to run this program
+goto end
+
+:okHome
+rem set the classes
+setlocal EnableDelayedExpansion
+rem loop through the libs and add them to the class path
+set CLIENT_CLASSPATH="%WSO2WSAS_HOME%\samples\FlickrClient\conf";"%WSO2WSAS_HOME%\samples\FlickrClient\temp\classes"
+cd %WSO2WSAS_HOME%
+FOR %%C in (.\lib\*.jar) DO set CLIENT_CLASSPATH=!CLIENT_CLASSPATH!;.\lib\%%~nC%%~xC
+
+rem ----- Execute The Requested Command ---------------------------------------
+echo Using WSO2WSAS_HOME:   %WSO2WSAS_HOME%
+echo Using JAVA_HOME:    %JAVA_HOME%
+set _RUNJAVA="%JAVA_HOME%\bin\java"
+
+%_RUNJAVA% %JAVA_OPTS% -Dwso2wsas.home="%WSO2WSAS_HOME%" -cp "%CLIENT_CLASSPATH%" -Djava.endorsed.dirs="%WSO2WSAS_HOME%\lib\endorsed";"%JAVA_HOME%\jre\lib\endorsed";"%JAVA_HOME%\lib\endorsed" org.wso2.wsas.sample.flickr.client.Client %*
+cd %CURRENT_DIR%
+endlocal
+:end

Added: trunk/wsas/java/modules/samples/FlickrClient/run-client.sh
==============================================================================
--- (empty file)
+++ trunk/wsas/java/modules/samples/FlickrClient/run-client.sh	Sun Apr  8 09:57:37 2007
@@ -0,0 +1,89 @@
+#!/bin/sh
+# -----------------------------------------------------------------------------
+#
+# Environment Variable Prequisites
+#
+#   WSO2WSAS_HOME   Home of WSO2 WSAS installation. If not set I will  try
+#                   to figure it out.
+#
+#   JAVA_HOME       Must point at your Java Development Kit installation.
+#
+# NOTE: Borrowed generously from Apache Tomcat startup scripts.
+
+# if JAVA_HOME is not set we're not happy
+if [ -z "$JAVA_HOME" ]; then
+  echo "You must set the JAVA_HOME variable before running WSO2 WSAS."
+  exit 1
+fi
+
+# OS specific support.  $var _must_ be set to either true or false.
+cygwin=false
+os400=false
+case "`uname`" in
+CYGWIN*) cygwin=true;;
+OS400*) os400=true;;
+esac
+
+# resolve links - $0 may be a softlink
+PRG="$0"
+
+while [ -h "$PRG" ]; do
+  ls=`ls -ld "$PRG"`
+  link=`expr "$ls" : '.*-> \(.*\)$'`
+  if expr "$link" : '.*/.*' > /dev/null; then
+    PRG="$link"
+  else
+    PRG=`dirname "$PRG"`/"$link"
+  fi
+done
+
+# Get standard environment variables
+PRGDIR=`dirname "$PRG"`
+
+# Only set WSO2WSAS_HOME if not already set
+[ -z "$WSO2WSAS_HOME" ] && WSO2WSAS_HOME=`cd "$PRGDIR/../.." ; pwd`
+
+# For Cygwin, ensure paths are in UNIX format before anything is touched
+if $cygwin; then
+  [ -n "$JAVA_HOME" ] && JAVA_HOME=`cygpath --unix "$JAVA_HOME"`
+  [ -n "$WSO2WSAS_HOME" ] && WSO2WSAS_HOME=`cygpath --unix "$WSO2WSAS_HOME"`
+  [ -n "$CLASSPATH" ] && CLASSPATH=`cygpath --path --unix "$CLASSPATH"`
+fi
+
+# For OS400
+if $os400; then
+  # Set job priority to standard for interactive (interactive - 6) by using
+  # the interactive priority - 6, the helper threads that respond to requests
+  # will be running at the same priority as interactive jobs.
+  COMMAND='chgjob job('$JOBNAME') runpty(6)'
+  system $COMMAND
+
+  # Enable multi threading
+  export QIBM_MULTI_THREADED=Y
+fi
+
+# update classpath
+CLIENT_CLASSPATH=""
+for f in "$WSO2WSAS_HOME"/lib/*.jar
+do
+  CLIENT_CLASSPATH=$CLIENT_CLASSPATH:$f
+done
+CLIENT_CLASSPATH=$CLIENT_CLASSPATH:$CLASSPATH
+
+# For Cygwin, switch paths to Windows format before running java
+if $cygwin; then
+  JAVA_HOME=`cygpath --absolute --windows "$JAVA_HOME"`
+  WSO2WSAS_HOME=`cygpath --absolute --windows "$WSO2WSAS_HOME"`
+  CLASSPATH=`cygpath --path --windows "$CLASSPATH"`
+  JAVA_ENDORSED_DIRS=`cygpath --path --windows "$JAVA_ENDORSED_DIRS"`
+fi
+
+echo Using WSO2WSAS_HOME: $WSO2WSAS_HOME
+echo Using JAVA_HOME    : $JAVA_HOME
+
+CLIENT_CLASSPATH="$WSO2WSAS_HOME/samples/FlickrClient/temp/classes":\
+"$WSO2WSAS_HOME/samples/FlickrClient/conf":$CLIENT_CLASSPATH
+
+$JAVA_HOME/bin/java -Dwso2wsas.home="$WSO2WSAS_HOME" -classpath "$CLIENT_CLASSPATH" \
+-Djava.endorsed.dirs="$WSO2WSAS_HOME/lib/endorsed":"$JAVA_HOME/jre/lib/endorsed":"$JAVA_HOME/lib/endorsed" \
+org.wso2.wsas.sample.flickr.client.Client $*

Added: trunk/wsas/java/modules/samples/FlickrClient/src/org/wso2/wsas/sample/flickr/client/Client.java
==============================================================================
--- (empty file)
+++ trunk/wsas/java/modules/samples/FlickrClient/src/org/wso2/wsas/sample/flickr/client/Client.java	Sun Apr  8 09:57:37 2007
@@ -0,0 +1,33 @@
+/*
+ * Copyright 2005,2006 WSO2, Inc. http://www.wso2.org
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.wso2.wsas.sample.flickr.client;
+
+import javax.swing.*;
+
+public class Client {
+
+    public static void main(String[] args) {
+        FlickrServiceFrame frame = new FlickrServiceFrame();
+        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
+        frame.setSize(600, 550);
+        frame.setResizable(false);
+        frame.getContentPane().add(frame.getRootComponent());
+        frame.setEnabled(false);
+        frame.show();
+        frame.getAPIKEY();
+        frame.setEnabled(true);
+    }
+}

Added: trunk/wsas/java/modules/samples/FlickrClient/src/org/wso2/wsas/sample/flickr/client/FlickrServiceClient.java
==============================================================================
--- (empty file)
+++ trunk/wsas/java/modules/samples/FlickrClient/src/org/wso2/wsas/sample/flickr/client/FlickrServiceClient.java	Sun Apr  8 09:57:37 2007
@@ -0,0 +1,369 @@
+package org.wso2.wsas.sample.flickr.client;
+
+import org.apache.axiom.om.OMAttribute;
+import org.apache.axiom.om.OMElement;
+import org.apache.axis2.AxisFault;
+import org.apache.axis2.context.ConfigurationContext;
+import org.apache.axis2.context.ConfigurationContextFactory;
+import org.apache.axis2.databinding.types.Token;
+import org.wso2.www.types.flickr.client.Err_type0;
+import org.wso2.www.types.flickr.client.PeopleFindByEmail;
+import org.wso2.www.types.flickr.client.PeopleFindByUsername;
+import org.wso2.www.types.flickr.client.PeopleGetInfo;
+import org.wso2.www.types.flickr.client.PeopleGetPublicGroups;
+import org.wso2.www.types.flickr.client.PeopleGetPublicPhotos;
+import org.wso2.www.types.flickr.client.PeopleGetUploadStatus;
+import org.wso2.www.types.flickr.client.PhotosSearch;
+import org.wso2.www.types.flickr.client.Rsp;
+import org.wso2.www.types.flickr.client.StatType;
+
+import javax.xml.namespace.QName;
+import java.rmi.RemoteException;
+import java.util.Iterator;
+import java.net.URL;
+
+public class FlickrServiceClient {
+
+    public String testFlickrPeopleFindByEmail(String email, String key, String host, String port) {
+
+        FlickrServiceStub flickrServiceStub = null;
+        try {
+            flickrServiceStub = getStub(host, port);
+        } catch (AxisFault axisFault) {
+            return axisFault.getMessage();
+        }
+        PeopleFindByEmail peopleFindByEmail = new PeopleFindByEmail();
+        peopleFindByEmail.setApi_key(key);
+        peopleFindByEmail.setFind_email(email);
+        String output = "";
+        try {
+            Rsp response = flickrServiceStub.flickrPeopleFindByEmail(peopleFindByEmail);
+            StatType statType = response.getStat();
+            Token token = statType.getValue();
+            if (token.equals(StatType._ok)) {
+                OMElement[] elements = response.getExtraElement();
+                for (int i = 0; i < elements.length; i++) {
+                    OMElement user = elements[i];
+                    output = "The Details of the following user was retrived\n\n";
+                    output = output + "Username : " + user.getFirstElement().getText() + "\n";
+                    output = output + "User ID : " + user.getAttributeValue(new QName("id")) + "\n";
+                }
+            } else {
+                output = processPeopleError(response.getErr());
+            }
+        } catch (RemoteException e) {
+            output = e.getMessage();
+        }
+        return output;
+    }
+
+    public String testFlickrPeopleFindByUsername(String name, String key, String host,
+                                                 String port) {
+
+        FlickrServiceStub flickrServiceStub = null;
+        try {
+            flickrServiceStub = getStub(host, port);
+        } catch (AxisFault axisFault) {
+            return axisFault.getMessage();
+        }
+        PeopleFindByUsername peopleFindByUsername = new PeopleFindByUsername();
+        peopleFindByUsername.setApi_key(key);
+        peopleFindByUsername.setUsername(name);
+        String output = "";
+        try {
+            Rsp response = flickrServiceStub.flickrPeopleFindByUsername(peopleFindByUsername);
+            StatType statType = response.getStat();
+            Token token = statType.getValue();
+            if (token.equals(StatType._ok)) {
+                OMElement[] elements = response.getExtraElement();
+                for (int i = 0; i < elements.length; i++) {
+                    OMElement user = elements[i];
+                    OMAttribute omAttribute = user.getAttribute(new QName("id"));
+                    output = "The Details of the following user was retrived\n\n";
+                    output = user.getLocalName() + " " + omAttribute.getLocalName() + " : " +
+                            omAttribute.getAttributeValue();
+                }
+            } else {
+                output = processPeopleError(response.getErr());
+            }
+        } catch (RemoteException e) {
+            output = e.getMessage();
+        }
+        return output;
+    }
+
+    private String processPeopleError(Err_type0 error) {
+        String output;
+        output = "An error occuerd, while invoking the service.\n\n";
+        String code = error.getCode();
+        if ("1".equals(code)) {
+            output = output + "The user id passed did not match a Flickr user.";
+        } else if ("100".equals(code)) {
+            output = output + "The API key passed was not valid or has expired.";
+        } else if ("105".equals(code)) {
+            output = output + "The requested service is temporarily unavailable.";
+        } else if ("111".equals(code)) {
+            output = output + "The requested response format was not found.";
+        } else if ("112".equals(code)) {
+            output = output + "The requested method was not found.";
+        }
+        return output;
+    }
+
+    public String testFlickrPeopleGetInfo(String user_ID, String key, String host, String port) {
+
+        FlickrServiceStub flickrServiceStub = null;
+        try {
+            flickrServiceStub = getStub(host, port);
+        } catch (AxisFault axisFault) {
+            return axisFault.getMessage();
+        }
+        PeopleGetInfo peopleGetInfo = new PeopleGetInfo();
+        peopleGetInfo.setApi_key(key);
+        peopleGetInfo.setUser_id(user_ID);
+        String output = "";
+        try {
+            Rsp response = flickrServiceStub.flickrPeopleGetInfo(peopleGetInfo);
+            StatType statType = response.getStat();
+            Token token = statType.getValue();
+            if (token.equals(StatType._ok)) {
+                OMElement[] elements = response.getExtraElement();
+                for (int i = 0; i < elements.length; i++) {
+                    OMElement user = elements[i];
+                    output = "The Information of the following user was retrived\n\n";
+                    OMAttribute omAttribute = user.getAttribute(new QName("id"));
+                    output = output + "The ID of the person is : " +
+                            omAttribute.getAttributeValue() + "\n";
+                    OMElement username = user.getFirstChildWithName(new QName("username"));
+                    output = output + "The name of the person is : " + username.getText() + "\n";
+                    OMElement realname = user.getFirstChildWithName(new QName("realname"));
+                    output = output + "The real name of the person is : " + realname.getText() +
+                            "\n";
+                    OMElement location = user.getFirstChildWithName(new QName("location"));
+                    output =
+                            output + "The location of the person is : " + location.getText() + "\n";
+                    OMElement photosurl = user.getFirstChildWithName(new QName("photosurl"));
+                    output = output + "The photosurl is : " + photosurl.getText() + "\n";
+                    OMElement profileurl = user.getFirstChildWithName(new QName("profileurl"));
+                    output = output + "The profileurl is : " + profileurl.getText() + "\n\n";
+                    output = output + "Details of photos taken\n\n";
+                    OMElement photos = user.getFirstChildWithName(new QName("photos"));
+                    OMElement firstdate = photos.getFirstChildWithName(new QName("firstdate"));
+                    output =
+                            output + "The First photo was taken on : " + firstdate.getText() + "\n";
+                    OMElement firstdatetaken =
+                            photos.getFirstChildWithName(new QName("firstdatetaken"));
+                    output = output + "The firstdatetaken was taken on : " +
+                            firstdatetaken.getText() + "\n";
+                    OMElement count = photos.getFirstChildWithName(new QName("count"));
+                    output = output + "The number of photos : " + count.getText();
+                }
+            } else {
+                output = processPeopleError(response.getErr());
+            }
+        } catch (RemoteException e) {
+            output = e.getMessage();
+        }
+        return output;
+    }
+
+    public String testFlickrPeopleGetPublicGroups(String user_ID, String key, String host,
+                                                  String port) {
+
+        FlickrServiceStub flickrServiceStub = null;
+        try {
+            flickrServiceStub = getStub(host, port);
+        } catch (AxisFault axisFault) {
+            return axisFault.getMessage();
+        }
+        PeopleGetPublicGroups peopleGetPublicGroups = new PeopleGetPublicGroups();
+        peopleGetPublicGroups.setApi_key(key);
+        peopleGetPublicGroups.setUser_id(user_ID);
+        String output = "";
+        try {
+            Rsp response = flickrServiceStub.flickrPeopleGetPublicGroups(peopleGetPublicGroups);
+            StatType statType = response.getStat();
+            Token token = statType.getValue();
+            if (token.equals(StatType._ok)) {
+                OMElement[] elements = response.getExtraElement();
+                for (int i = 0; i < elements.length; i++) {
+                    OMElement user = elements[i];
+                    output = "Public groups of the user\n\n";
+                    Iterator iterator = user.getChildElements();
+                    while (iterator.hasNext()) {
+                        OMElement childElement = (OMElement) iterator.next();
+                        output = output + "Group ID : " +
+                                childElement.getAttribute(new QName("nsid")).getAttributeValue() +
+                                "\nGroup name : " +
+                                childElement.getAttribute(new QName("name")).getAttributeValue() +
+                                "\n\n";
+                    }
+                }
+            } else {
+                output = processPeopleError(response.getErr());
+            }
+        } catch (RemoteException e) {
+            output = e.getMessage();
+        }
+        return output;
+    }
+
+    public String testFlickrPeopleGetPublicPhotos(String user_ID, String key, String host,
+                                                  String port) {
+        FlickrServiceStub flickrServiceStub = null;
+        try {
+            flickrServiceStub = getStub(host, port);
+        } catch (AxisFault axisFault) {
+            return axisFault.getMessage();
+        }
+        PeopleGetPublicPhotos peopleGetPublicPhotos = new PeopleGetPublicPhotos();
+        peopleGetPublicPhotos.setApi_key(key);
+        peopleGetPublicPhotos.setUser_id(user_ID);
+        String output = "";
+        try {
+            Rsp response = flickrServiceStub.flickrPeopleGetPublicPhotos(peopleGetPublicPhotos);
+            StatType statType = response.getStat();
+            Token token = statType.getValue();
+            if (token.equals(StatType._ok)) {
+                OMElement[] elements = response.getExtraElement();
+                for (int i = 0; i < elements.length; i++) {
+                    OMElement user = elements[i];
+                    output = "Public photos of the user\n\n";
+                    Iterator iterator = user.getChildElements();
+                    while (iterator.hasNext()) {
+                        OMElement childElement = (OMElement) iterator.next();
+                        output = output + "Photo ID : " +
+                                childElement.getAttribute(new QName("id")).getAttributeValue() +
+                                "\nOwner : " +
+                                childElement.getAttribute(new QName("owner")).getAttributeValue() +
+                                "\n";
+                        output = output + "Title : " +
+                                childElement.getAttribute(new QName("title")).getAttributeValue() +
+                                "\n\n";
+                    }
+                }
+            } else {
+                output = processPeopleError(response.getErr());
+            }
+        } catch (RemoteException e) {
+            output = e.getMessage();
+        }
+        return output;
+    }
+
+    public String testFlickrPeopleGetUploadStatus(String username, String key, String host,
+                                                  String port) {
+        FlickrServiceStub flickrServiceStub = null;
+        try {
+            flickrServiceStub = getStub(host, port);
+        } catch (AxisFault axisFault) {
+            return axisFault.getMessage();
+        }
+        PeopleGetUploadStatus peopleGetUploadStatus = new PeopleGetUploadStatus();
+
+        peopleGetUploadStatus.setApi_key(key);
+        peopleGetUploadStatus.setUsername(username);
+        String output = "";
+        try {
+            Rsp response = flickrServiceStub.flickrPeopleGetUploadStatus(peopleGetUploadStatus);
+            StatType statType = response.getStat();
+            Token token = statType.getValue();
+            if (token.equals(StatType._ok)) {
+                OMElement[] elements = response.getExtraElement();
+                for (int i = 0; i < elements.length; i++) {
+                    OMElement user = elements[i];
+                    output = "Upload status of the user\n\n";
+                    output = output + "User ID : " +
+                            user.getAttribute(new QName("id")).getAttributeValue();
+                    OMElement usernameElement = user.getFirstChildWithName(new QName("username"));
+                    output = output + "The name of the person is : " + usernameElement.getText() +
+                            "\n";
+                    OMElement bandwidth = user.getFirstChildWithName(new QName("bandwidth"));
+                    output = output + "Bandwidth information\n";
+                    output = output + "Maximum Bytes : " +
+                            bandwidth.getAttribute(new QName("maxbytes")).getAttributeValue();
+                    output = output + "Maximum KiloBytes : " +
+                            bandwidth.getAttribute(new QName("maxkb")).getAttributeValue();
+                    output = output + "Used Bytes : " +
+                            bandwidth.getAttribute(new QName("usedbytes")).getAttributeValue();
+                    output = output + "Used KiloBytes : " +
+                            bandwidth.getAttribute(new QName("usedkb")).getAttributeValue();
+                    output = output + "Remaining Bytes : " +
+                            bandwidth.getAttribute(new QName("remainingbytes")).getAttributeValue();
+                    output = output + "Remaining KiloBytes : " +
+                            bandwidth.getAttribute(new QName("remainingkb")).getAttributeValue();
+                    OMElement filesize = user.getFirstChildWithName(new QName("filesize"));
+                    output = output + "FileSize information\n";
+                    output = output + "Maximum Bytes : " +
+                            filesize.getAttribute(new QName("maxbytes")).getAttributeValue();
+                    output = output + "Maximum KiloBytes : " +
+                            filesize.getAttribute(new QName("maxkb")).getAttributeValue();
+                    OMElement sets = user.getFirstChildWithName(new QName("sets"));
+                    output = output + "Information on sets\n";
+                    output = output + "Created : " +
+                            sets.getAttribute(new QName("created")).getAttributeValue();
+                    output = output + "Remaining : " +
+                            sets.getAttribute(new QName("remaining")).getAttributeValue();
+                }
+            } else {
+                output = processPeopleError(response.getErr());
+            }
+        } catch (RemoteException e) {
+            output = e.getMessage();
+        }
+        return output;
+    }
+
+    public String testFlickrPhotosSearch(String user_ID, String key, String host, String port) {
+        FlickrServiceStub flickrServiceStub = null;
+        try {
+            flickrServiceStub = getStub(host, port);
+        } catch (AxisFault axisFault) {
+            return axisFault.getMessage();
+        }
+        PhotosSearch photosSearch = new PhotosSearch();
+        photosSearch.setApi_key(key);
+        photosSearch.setUser_id(user_ID);
+        String output = "";
+        try {
+            Rsp response = flickrServiceStub.flickrPhotosSearch(photosSearch);
+            StatType statType = response.getStat();
+            Token token = statType.getValue();
+            if (token.equals(StatType._ok)) {
+                OMElement[] elements = response.getExtraElement();
+                for (int i = 0; i < elements.length; i++) {
+                    OMElement user = elements[i];
+                    output = "Public photos of the user\n\n";
+                    Iterator iterator = user.getChildElements();
+                    while (iterator.hasNext()) {
+                        OMElement childElement = (OMElement) iterator.next();
+                        output = output + "Photo ID : " +
+                                childElement.getAttribute(new QName("id")).getAttributeValue() +
+                                "\nOwner : " +
+                                childElement.getAttribute(new QName("owner")).getAttributeValue() +
+                                "\n";
+                        output = output + "Title : " +
+                                childElement.getAttribute(new QName("title")).getAttributeValue() +
+                                "\n\n";
+                    }
+                }
+            } else {
+                output = processPeopleError(response.getErr());
+            }
+        } catch (RemoteException e) {
+            output = e.getMessage();
+        }
+        return output;
+    }
+
+    private FlickrServiceStub getStub(String host, String port) throws AxisFault {
+        FlickrServiceStub flickrServiceStub = null;
+        URL axis2Path = this.getClass().getClassLoader().getResource("axis2.xml");
+        ConfigurationContext configurationContext = ConfigurationContextFactory
+                .createConfigurationContextFromFileSystem(null, axis2Path.getFile());
+        String address = "http://" + host + ":" + port + "/services/rest/";
+        flickrServiceStub = new FlickrServiceStub(configurationContext, address);
+        return flickrServiceStub;
+    }
+
+}

Added: trunk/wsas/java/modules/samples/FlickrClient/src/org/wso2/wsas/sample/flickr/client/FlickrServiceFrame.java
==============================================================================
--- (empty file)
+++ trunk/wsas/java/modules/samples/FlickrClient/src/org/wso2/wsas/sample/flickr/client/FlickrServiceFrame.java	Sun Apr  8 09:57:37 2007
@@ -0,0 +1,597 @@
+/*
+ * Copyright 2005,2006 WSO2, Inc. http://www.wso2.org
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.wso2.wsas.sample.flickr.client;
+
+import javax.swing.*;
+import java.awt.*;
+import java.awt.event.ActionEvent;
+import java.awt.event.ActionListener;
+
+public class FlickrServiceFrame extends JFrame {
+    private JTabbedPane tabbedPane1;
+    private JPanel panel1;
+    private JTabbedPane peopleOperationPane;
+    private JButton findByEmailInvoke;
+    private JTextArea findByEmailOutput;
+    private JTextField txtUsername;
+    private JTextField txtEmail;
+    private JTextArea findByUsernameOutput;
+    private JButton findByUsernameInvoke;
+    private JLabel txtUserID;
+    private JTextField txtGetInfo;
+    private JTextArea getInfoOutput;
+    private JButton getInfoInvoke;
+    private JTextField txtGetPublicGroups;
+    private JButton getPublicGroupsInvoke;
+    private JTextArea getPublicGroupsOutput;
+    private JTextField txtGetPublicPhotos;
+    private JButton invokeButton;
+    private JTextArea getPublicPhotosOutput;
+    private JTextField txtGetUploadStatus;
+    private JButton getUploadStatusInvoke;
+    private JTextArea getUploadStatusOutput;
+    FlickrServiceClient client = new FlickrServiceClient();
+    private String key;
+    private String host = "api.flickr.com";
+    private String port = "80";
+
+    public FlickrServiceFrame() {
+
+        JMenu configMenu = new JMenu("Configure");
+        JMenuItem hostMenuItem = configMenu.add("Host");
+        hostMenuItem.addActionListener(new ActionListener() {
+            public void actionPerformed(ActionEvent e) {
+                String result =
+                        JOptionPane.showInputDialog(getContentPane(), "Enter host address", host);
+                if (result != null && !"".equals(result.trim())) {
+                    host = result;
+                }
+            }
+        });
+        JMenuItem portMenuItem = configMenu.add("Port");
+        portMenuItem.addActionListener(new ActionListener() {
+            public void actionPerformed(ActionEvent e) {
+                String result = JOptionPane.showInputDialog(getContentPane(), "Enter port", port);
+                if (result != null && !"".equals(result.trim())) {
+                    port = result;
+                }
+            }
+        });
+
+        JMenuItem keyMenuItem = configMenu.add("API KEY");
+        keyMenuItem.addActionListener(new ActionListener() {
+            public void actionPerformed(ActionEvent e) {
+                getAPIKEY();
+            }
+        });
+        JMenuBar menuBar = new JMenuBar();
+        setJMenuBar(menuBar);
+
+        menuBar.add(configMenu);
+
+        findByEmailInvoke.addActionListener(new ActionListener() {
+            /**
+             * Invoked when an action occurs.
+             */
+            public void actionPerformed(ActionEvent e) {
+                findByEmailOutput.setText(
+                        client.testFlickrPeopleFindByEmail(txtEmail.getText(), key, host, port));
+            }
+        });
+        findByUsernameInvoke.addActionListener(new ActionListener() {
+            /**
+             * Invoked when an action occurs.
+             */
+            public void actionPerformed(ActionEvent e) {
+                findByUsernameOutput
+                        .setText(client.testFlickrPeopleFindByUsername(txtUsername.getText(),
+                                                                       key, host, port));
+            }
+        });
+        getInfoInvoke.addActionListener(new ActionListener() {
+            /**
+             * Invoked when an action occurs.
+             */
+            public void actionPerformed(ActionEvent e) {
+                getInfoOutput.setText(
+                        client.testFlickrPeopleGetInfo(txtGetInfo.getText(), key, host, port));
+            }
+        });
+        getPublicGroupsInvoke.addActionListener(new ActionListener() {
+            /**
+             * Invoked when an action occurs.
+             */
+            public void actionPerformed(ActionEvent e) {
+                getPublicGroupsOutput.setText(
+                        client.testFlickrPeopleGetPublicGroups(txtGetPublicGroups.getText(),
+                                                               key, host, port));
+            }
+        });
+        invokeButton.addActionListener(new ActionListener() {
+            /**
+             * Invoked when an action occurs.
+             */
+            public void actionPerformed(ActionEvent e) {
+                getPublicPhotosOutput.setText(
+                        client.testFlickrPeopleGetPublicPhotos(txtGetPublicPhotos.getText(),
+                                                               key, host, port));
+            }
+        });
+        getUploadStatusInvoke.addActionListener(new ActionListener() {
+            /**
+             * Invoked when an action occurs.
+             */
+            public void actionPerformed(ActionEvent e) {
+                getUploadStatusOutput.setText(
+                        client.testFlickrPeopleGetUploadStatus(txtGetUploadStatus.getText(),
+                                                               key, host, port));
+            }
+        });
+
+
+    }
+
+    public void setKey(String key) {
+        this.key = key;
+    }
+
+    public void getAPIKEY() {
+        while (true) {
+            key = JOptionPane.showInputDialog(this, "Plse enter a valid API KEY for flickr",
+                                              "Enter API KEY",
+                                              JOptionPane.INFORMATION_MESSAGE);
+            if (key == null) {
+                System.exit(0);
+            } else if ("".equals(key.trim())) {
+                JOptionPane.showMessageDialog(this, "The API KEY cannot be empty");
+            } else {
+                break;
+            }
+        }
+        this.setKey(key);
+    }
+
+
+    {
+        setupUI();
+    }
+
+    private void setupUI() {
+        panel1 = new JPanel();
+        panel1.setLayout(new GridBagLayout());
+        panel1.setMaximumSize(new Dimension(600, 500));
+        panel1.setMinimumSize(new Dimension(600, 500));
+        panel1.setPreferredSize(new Dimension(600, 500));
+        panel1.setRequestFocusEnabled(false);
+        tabbedPane1 = new JTabbedPane();
+        tabbedPane1.setPreferredSize(new Dimension(600, 500));
+        GridBagConstraints gbc;
+        gbc = new GridBagConstraints();
+        gbc.gridx = 0;
+        gbc.gridy = 0;
+        gbc.weightx = 1.0;
+        gbc.weighty = 1.0;
+        gbc.fill = GridBagConstraints.BOTH;
+        panel1.add(tabbedPane1, gbc);
+        final JPanel panel2 = new JPanel();
+        panel2.setLayout(new GridBagLayout());
+        tabbedPane1.addTab("People", panel2);
+        peopleOperationPane = new JTabbedPane();
+        gbc = new GridBagConstraints();
+        gbc.gridx = 0;
+        gbc.gridy = 0;
+        gbc.weightx = 1.0;
+        gbc.weighty = 1.0;
+        gbc.fill = GridBagConstraints.BOTH;
+        panel2.add(peopleOperationPane, gbc);
+        final JPanel panel3 = new JPanel();
+        panel3.setLayout(new GridBagLayout());
+        peopleOperationPane.addTab("FindByEmail", panel3);
+        final JLabel label1 = new JLabel();
+        label1.setHorizontalAlignment(0);
+        label1.setHorizontalTextPosition(0);
+        label1.setMaximumSize(new Dimension(400, 50));
+        label1.setMinimumSize(new Dimension(400, 50));
+        label1.setPreferredSize(new Dimension(400, 50));
+        label1.setText("Return a user's NSID, given their email address");
+        gbc = new GridBagConstraints();
+        gbc.gridx = 0;
+        gbc.gridy = 0;
+        gbc.gridwidth = 2;
+        gbc.anchor = GridBagConstraints.NORTH;
+        panel3.add(label1, gbc);
+        final JLabel label2 = new JLabel();
+        label2.setHorizontalAlignment(0);
+        label2.setMaximumSize(new Dimension(300, 15));
+        label2.setMinimumSize(new Dimension(300, 15));
+        label2.setPreferredSize(new Dimension(300, 15));
+        label2.setText("E-Mail");
+        gbc = new GridBagConstraints();
+        gbc.gridx = 0;
+        gbc.gridy = 2;
+        gbc.anchor = GridBagConstraints.WEST;
+        panel3.add(label2, gbc);
+        txtEmail = new JTextField();
+        txtEmail.setEditable(true);
+        txtEmail.setMaximumSize(new Dimension(200, 25));
+        txtEmail.setMinimumSize(new Dimension(200, 25));
+        txtEmail.setPreferredSize(new Dimension(200, 25));
+        txtEmail.setRequestFocusEnabled(true);
+        gbc = new GridBagConstraints();
+        gbc.gridx = 1;
+        gbc.gridy = 2;
+        gbc.weightx = 1.0;
+        panel3.add(txtEmail, gbc);
+        final JScrollPane scrollPane1 = new JScrollPane();
+        scrollPane1.setBackground(new Color(-3355444));
+        scrollPane1.setMaximumSize(new Dimension(550, 225));
+        scrollPane1.setMinimumSize(new Dimension(550, 225));
+        scrollPane1.setPreferredSize(new Dimension(550, 225));
+        gbc = new GridBagConstraints();
+        gbc.gridx = 0;
+        gbc.gridy = 4;
+        gbc.gridwidth = 2;
+        gbc.weighty = 1.0;
+        panel3.add(scrollPane1, gbc);
+        findByEmailOutput = new JTextArea();
+        findByEmailOutput.setBackground(new Color(-3355444));
+        findByEmailOutput.setEditable(false);
+        findByEmailOutput.setText("");
+        scrollPane1.setViewportView(findByEmailOutput);
+        findByEmailInvoke = new JButton();
+        findByEmailInvoke.setMaximumSize(new Dimension(100, 30));
+        findByEmailInvoke.setMinimumSize(new Dimension(100, 30));
+        findByEmailInvoke.setPreferredSize(new Dimension(100, 30));
+        findByEmailInvoke.setText("Invoke");
+        gbc = new GridBagConstraints();
+        gbc.gridx = 0;
+        gbc.gridy = 3;
+        gbc.gridwidth = 2;
+        gbc.insets = new Insets(15, 0, 15, 0);
+        panel3.add(findByEmailInvoke, gbc);
+        final JPanel panel4 = new JPanel();
+        panel4.setLayout(new GridBagLayout());
+        peopleOperationPane.addTab("FindByUsername", panel4);
+        final JLabel label3 = new JLabel();
+        label3.setHorizontalAlignment(0);
+        label3.setHorizontalTextPosition(0);
+        label3.setMaximumSize(new Dimension(400, 50));
+        label3.setMinimumSize(new Dimension(400, 50));
+        label3.setPreferredSize(new Dimension(400, 50));
+        label3.setText("Return a user's NSID, given their username.");
+        gbc = new GridBagConstraints();
+        gbc.gridx = 0;
+        gbc.gridy = 0;
+        gbc.gridwidth = 3;
+        gbc.anchor = GridBagConstraints.NORTH;
+        panel4.add(label3, gbc);
+        final JPanel panel5 = new JPanel();
+        panel5.setLayout(new GridBagLayout());
+        gbc = new GridBagConstraints();
+        gbc.gridx = 0;
+        gbc.gridy = 3;
+        gbc.gridwidth = 3;
+        gbc.weighty = 1.0;
+        gbc.fill = GridBagConstraints.BOTH;
+        panel4.add(panel5, gbc);
+        findByUsernameInvoke = new JButton();
+        findByUsernameInvoke.setMaximumSize(new Dimension(100, 30));
+        findByUsernameInvoke.setMinimumSize(new Dimension(100, 30));
+        findByUsernameInvoke.setPreferredSize(new Dimension(100, 30));
+        findByUsernameInvoke.setText("Invoke");
+        gbc = new GridBagConstraints();
+        gbc.gridx = 0;
+        gbc.gridy = 0;
+        gbc.weightx = 1.0;
+        gbc.insets = new Insets(15, 0, 15, 0);
+        panel5.add(findByUsernameInvoke, gbc);
+        final JScrollPane scrollPane2 = new JScrollPane();
+        scrollPane2.setBackground(new Color(-3355444));
+        scrollPane2.setMaximumSize(new Dimension(500, 225));
+        scrollPane2.setMinimumSize(new Dimension(500, 225));
+        scrollPane2.setPreferredSize(new Dimension(500, 225));
+        gbc = new GridBagConstraints();
+        gbc.gridx = 0;
+        gbc.gridy = 1;
+        gbc.weightx = 1.0;
+        gbc.weighty = 1.0;
+        panel5.add(scrollPane2, gbc);
+        findByUsernameOutput = new JTextArea();
+        findByUsernameOutput.setBackground(new Color(-3355444));
+        findByUsernameOutput.setEditable(false);
+        findByUsernameOutput.setForeground(new Color(-16777216));
+        findByUsernameOutput.setText("");
+        scrollPane2.setViewportView(findByUsernameOutput);
+        final JLabel label4 = new JLabel();
+        label4.setHorizontalAlignment(0);
+        label4.setMaximumSize(new Dimension(300, 25));
+        label4.setMinimumSize(new Dimension(300, 25));
+        label4.setPreferredSize(new Dimension(300, 25));
+        label4.setText("Username");
+        label4.setVerifyInputWhenFocusTarget(false);
+        gbc = new GridBagConstraints();
+        gbc.gridx = 0;
+        gbc.gridy = 1;
+        panel4.add(label4, gbc);
+        txtUsername = new JTextField();
+        txtUsername.setMaximumSize(new Dimension(200, 25));
+        txtUsername.setMinimumSize(new Dimension(200, 25));
+        txtUsername.setOpaque(true);
+        txtUsername.setPreferredSize(new Dimension(200, 25));
+        gbc = new GridBagConstraints();
+        gbc.gridx = 1;
+        gbc.gridy = 1;
+        gbc.weightx = 1.0;
+        panel4.add(txtUsername, gbc);
+        final JPanel panel6 = new JPanel();
+        panel6.setLayout(new GridBagLayout());
+        peopleOperationPane.addTab("GetInfo", panel6);
+        final JLabel label5 = new JLabel();
+        label5.setHorizontalAlignment(0);
+        label5.setHorizontalTextPosition(0);
+        label5.setMaximumSize(new Dimension(400, 50));
+        label5.setMinimumSize(new Dimension(400, 50));
+        label5.setPreferredSize(new Dimension(400, 50));
+        label5.setText("Get information about a user.");
+        gbc = new GridBagConstraints();
+        gbc.gridx = 0;
+        gbc.gridy = 0;
+        gbc.gridwidth = 2;
+        gbc.anchor = GridBagConstraints.NORTH;
+        panel6.add(label5, gbc);
+        txtUserID = new JLabel();
+        txtUserID.setHorizontalAlignment(0);
+        txtUserID.setMaximumSize(new Dimension(300, 25));
+        txtUserID.setMinimumSize(new Dimension(300, 25));
+        txtUserID.setPreferredSize(new Dimension(300, 25));
+        txtUserID.setText("UserID");
+        gbc = new GridBagConstraints();
+        gbc.gridx = 0;
+        gbc.gridy = 1;
+        panel6.add(txtUserID, gbc);
+        txtGetInfo = new JTextField();
+        txtGetInfo.setMaximumSize(new Dimension(200, 25));
+        txtGetInfo.setMinimumSize(new Dimension(200, 25));
+        txtGetInfo.setPreferredSize(new Dimension(200, 25));
+        gbc = new GridBagConstraints();
+        gbc.gridx = 1;
+        gbc.gridy = 1;
+        gbc.weightx = 1.0;
+        panel6.add(txtGetInfo, gbc);
+        getInfoInvoke = new JButton();
+        getInfoInvoke.setMaximumSize(new Dimension(100, 30));
+        getInfoInvoke.setMinimumSize(new Dimension(100, 30));
+        getInfoInvoke.setPreferredSize(new Dimension(100, 30));
+        getInfoInvoke.setText("Invoke");
+        gbc = new GridBagConstraints();
+        gbc.gridx = 0;
+        gbc.gridy = 3;
+        gbc.gridwidth = 2;
+        gbc.insets = new Insets(15, 0, 15, 0);
+        panel6.add(getInfoInvoke, gbc);
+        final JScrollPane scrollPane3 = new JScrollPane();
+        scrollPane3.setHorizontalScrollBarPolicy(30);
+        scrollPane3.setMaximumSize(new Dimension(550, 225));
+        scrollPane3.setMinimumSize(new Dimension(550, 225));
+        scrollPane3.setPreferredSize(new Dimension(550, 225));
+        scrollPane3.setVerticalScrollBarPolicy(20);
+        gbc = new GridBagConstraints();
+        gbc.gridx = 0;
+        gbc.gridy = 4;
+        gbc.gridwidth = 2;
+        gbc.weighty = 1.0;
+        panel6.add(scrollPane3, gbc);
+        getInfoOutput = new JTextArea();
+        getInfoOutput.setAutoscrolls(false);
+        getInfoOutput.setBackground(new Color(-3355444));
+        getInfoOutput.setEditable(false);
+        scrollPane3.setViewportView(getInfoOutput);
+        final JPanel panel7 = new JPanel();
+        panel7.setLayout(new GridBagLayout());
+        peopleOperationPane.addTab("GetPublicGroups", panel7);
+        final JLabel label6 = new JLabel();
+        label6.setHorizontalAlignment(0);
+        label6.setHorizontalTextPosition(0);
+        label6.setMaximumSize(new Dimension(400, 50));
+        label6.setMinimumSize(new Dimension(400, 50));
+        label6.setPreferredSize(new Dimension(400, 50));
+        label6.setText("Returns the list of public groups a user is a member of.");
+        gbc = new GridBagConstraints();
+        gbc.gridx = 0;
+        gbc.gridy = 0;
+        gbc.gridwidth = 2;
+        gbc.anchor = GridBagConstraints.NORTH;
+        panel7.add(label6, gbc);
+        final JLabel label7 = new JLabel();
+        label7.setHorizontalAlignment(0);
+        label7.setMaximumSize(new Dimension(300, 25));
+        label7.setMinimumSize(new Dimension(300, 25));
+        label7.setPreferredSize(new Dimension(300, 25));
+        label7.setText("User ID");
+        gbc = new GridBagConstraints();
+        gbc.gridx = 0;
+        gbc.gridy = 1;
+        gbc.anchor = GridBagConstraints.EAST;
+        panel7.add(label7, gbc);
+        txtGetPublicGroups = new JTextField();
+        txtGetPublicGroups.setMaximumSize(new Dimension(200, 25));
+        txtGetPublicGroups.setMinimumSize(new Dimension(200, 25));
+        txtGetPublicGroups.setPreferredSize(new Dimension(200, 25));
+        gbc = new GridBagConstraints();
+        gbc.gridx = 1;
+        gbc.gridy = 1;
+        gbc.weightx = 1.0;
+        panel7.add(txtGetPublicGroups, gbc);
+        getPublicGroupsInvoke = new JButton();
+        getPublicGroupsInvoke.setLabel("Invoke");
+        getPublicGroupsInvoke.setMaximumSize(new Dimension(100, 30));
+        getPublicGroupsInvoke.setMinimumSize(new Dimension(100, 30));
+        getPublicGroupsInvoke.setPreferredSize(new Dimension(100, 30));
+        getPublicGroupsInvoke.setText("Invoke");
+        gbc = new GridBagConstraints();
+        gbc.gridx = 0;
+        gbc.gridy = 3;
+        gbc.gridwidth = 2;
+        gbc.insets = new Insets(15, 0, 15, 0);
+        panel7.add(getPublicGroupsInvoke, gbc);
+        final JScrollPane scrollPane4 = new JScrollPane();
+        scrollPane4.setMaximumSize(new Dimension(550, 225));
+        scrollPane4.setMinimumSize(new Dimension(550, 225));
+        scrollPane4.setPreferredSize(new Dimension(550, 225));
+        gbc = new GridBagConstraints();
+        gbc.gridx = 0;
+        gbc.gridy = 4;
+        gbc.gridwidth = 2;
+        gbc.weighty = 1.0;
+        panel7.add(scrollPane4, gbc);
+        getPublicGroupsOutput = new JTextArea();
+        getPublicGroupsOutput.setBackground(new Color(-3355444));
+        getPublicGroupsOutput.setEditable(false);
+        scrollPane4.setViewportView(getPublicGroupsOutput);
+        final JPanel panel8 = new JPanel();
+        panel8.setLayout(new GridBagLayout());
+        peopleOperationPane.addTab("GetPublicPhotos", panel8);
+        final JLabel label8 = new JLabel();
+        label8.setHorizontalAlignment(0);
+        label8.setMaximumSize(new Dimension(400, 50));
+        label8.setMinimumSize(new Dimension(400, 50));
+        label8.setPreferredSize(new Dimension(400, 50));
+        label8.setText("Get a list of public photos for the given user.");
+        gbc = new GridBagConstraints();
+        gbc.gridx = 0;
+        gbc.gridy = 0;
+        gbc.gridwidth = 2;
+        gbc.anchor = GridBagConstraints.NORTH;
+        panel8.add(label8, gbc);
+        final JLabel label9 = new JLabel();
+        label9.setHorizontalAlignment(0);
+        label9.setMaximumSize(new Dimension(300, 25));
+        label9.setMinimumSize(new Dimension(300, 25));
+        label9.setPreferredSize(new Dimension(300, 25));
+        label9.setText("User ID");
+        gbc = new GridBagConstraints();
+        gbc.gridx = 0;
+        gbc.gridy = 1;
+        gbc.anchor = GridBagConstraints.EAST;
+        panel8.add(label9, gbc);
+        txtGetPublicPhotos = new JTextField();
+        txtGetPublicPhotos.setMaximumSize(new Dimension(200, 25));
+        txtGetPublicPhotos.setMinimumSize(new Dimension(200, 25));
+        txtGetPublicPhotos.setPreferredSize(new Dimension(200, 25));
+        gbc = new GridBagConstraints();
+        gbc.gridx = 1;
+        gbc.gridy = 1;
+        gbc.weightx = 1.0;
+        panel8.add(txtGetPublicPhotos, gbc);
+        invokeButton = new JButton();
+        invokeButton.setActionCommand("Button");
+        invokeButton.setMaximumSize(new Dimension(100, 30));
+        invokeButton.setMinimumSize(new Dimension(100, 30));
+        invokeButton.setOpaque(true);
+        invokeButton.setPreferredSize(new Dimension(100, 30));
+        invokeButton.setText("Invoke");
+        gbc = new GridBagConstraints();
+        gbc.gridx = 0;
+        gbc.gridy = 3;
+        gbc.gridwidth = 2;
+        gbc.insets = new Insets(15, 0, 15, 0);
+        panel8.add(invokeButton, gbc);
+        final JScrollPane scrollPane5 = new JScrollPane();
+        scrollPane5.setMaximumSize(new Dimension(550, 225));
+        scrollPane5.setMinimumSize(new Dimension(550, 225));
+        scrollPane5.setPreferredSize(new Dimension(550, 225));
+        gbc = new GridBagConstraints();
+        gbc.gridx = 0;
+        gbc.gridy = 4;
+        gbc.gridwidth = 2;
+        gbc.weighty = 1.0;
+        panel8.add(scrollPane5, gbc);
+        getPublicPhotosOutput = new JTextArea();
+        getPublicPhotosOutput.setBackground(new Color(-3355444));
+        getPublicPhotosOutput.setEditable(false);
+        getPublicPhotosOutput.setText("");
+        scrollPane5.setViewportView(getPublicPhotosOutput);
+        final JPanel panel9 = new JPanel();
+        panel9.setLayout(new GridBagLayout());
+        peopleOperationPane.addTab("GetUploadStatus", panel9);
+        final JLabel label10 = new JLabel();
+        label10.setHorizontalAlignment(0);
+        label10.setMaximumSize(new Dimension(475, 50));
+        label10.setMinimumSize(new Dimension(475, 50));
+        label10.setPreferredSize(new Dimension(475, 50));
+        label10.setText("Returns information for the calling user related to photo uploads.");
+        gbc = new GridBagConstraints();
+        gbc.gridx = 0;
+        gbc.gridy = 0;
+        gbc.gridwidth = 2;
+        gbc.anchor = GridBagConstraints.NORTH;
+        panel9.add(label10, gbc);
+        final JLabel label11 = new JLabel();
+        label11.setHorizontalAlignment(0);
+        label11.setMaximumSize(new Dimension(300, 25));
+        label11.setMinimumSize(new Dimension(300, 25));
+        label11.setPreferredSize(new Dimension(300, 25));
+        label11.setText("Username");
+        gbc = new GridBagConstraints();
+        gbc.gridx = 0;
+        gbc.gridy = 1;
+        gbc.anchor = GridBagConstraints.EAST;
+        panel9.add(label11, gbc);
+        txtGetUploadStatus = new JTextField();
+        txtGetUploadStatus.setMaximumSize(new Dimension(200, 25));
+        txtGetUploadStatus.setMinimumSize(new Dimension(200, 25));
+        txtGetUploadStatus.setPreferredSize(new Dimension(200, 25));
+        gbc = new GridBagConstraints();
+        gbc.gridx = 1;
+        gbc.gridy = 1;
+        gbc.weightx = 1.0;
+        panel9.add(txtGetUploadStatus, gbc);
+        getUploadStatusInvoke = new JButton();
+        getUploadStatusInvoke.setMaximumSize(new Dimension(100, 30));
+        getUploadStatusInvoke.setMinimumSize(new Dimension(100, 30));
+        getUploadStatusInvoke.setPreferredSize(new Dimension(100, 30));
+        getUploadStatusInvoke.setText("Invoke");
+        gbc = new GridBagConstraints();
+        gbc.gridx = 0;
+        gbc.gridy = 3;
+        gbc.gridwidth = 2;
+        gbc.insets = new Insets(15, 0, 15, 0);
+        panel9.add(getUploadStatusInvoke, gbc);
+        final JScrollPane scrollPane6 = new JScrollPane();
+        scrollPane6.setMaximumSize(new Dimension(550, 225));
+        scrollPane6.setMinimumSize(new Dimension(550, 225));
+        scrollPane6.setPreferredSize(new Dimension(550, 225));
+        gbc = new GridBagConstraints();
+        gbc.gridx = 0;
+        gbc.gridy = 4;
+        gbc.gridwidth = 2;
+        gbc.weighty = 1.0;
+        panel9.add(scrollPane6, gbc);
+        getUploadStatusOutput = new JTextArea();
+        getUploadStatusOutput.setBackground(new Color(-3355444));
+        getUploadStatusOutput.setEditable(false);
+        getUploadStatusOutput.setText("");
+        scrollPane6.setViewportView(getUploadStatusOutput);
+        final JPanel panel10 = new JPanel();
+        panel10.setLayout(new GridBagLayout());
+        tabbedPane1.addTab("Photos", panel10);
+        findByEmailOutput.setNextFocusableComponent(tabbedPane1);
+    }
+
+    public JComponent getRootComponent() {
+        return panel1;
+    }
+}

Added: trunk/wsas/java/modules/samples/FlickrClient/wsdl/FlickrService.wsdl
==============================================================================
--- (empty file)
+++ trunk/wsas/java/modules/samples/FlickrClient/wsdl/FlickrService.wsdl	Sun Apr  8 09:57:37 2007
@@ -0,0 +1,247 @@
+<wsdl:description
+		xmlns:wsdl="http://www.w3.org/ns/wsdl"
+		xmlns:wsoap="http://www.w3.org/ns/wsdl/soap"
+		xmlns:whttp="http://www.w3.org/ns/wsdl/http"
+		xmlns:wsdlx="http://www.w3.org/ns/wsdl-extensions"
+		xmlns:xs="http://www.w3.org/2001/XMLSchema"
+		xmlns:fl="urn:flickr"
+        xmlns="http://wso2.org/repos/wso2/people/jonathan/flickr.wsdl"
+        xmlns:tns="http://wso2.org/repos/wso2/people/jonathan/flickr.wsdl"
+		targetNamespace="http://wso2.org/repos/wso2/people/jonathan/flickr.wsdl">
+	<wsdl:documentation>
+		This service describes the flickr api.
+		Currently it is a limited demonstration of WSDL 2.0, focusing on the
+		flickr.peopple.* methods under the HTTP binding.
+	</wsdl:documentation>
+	<wsdl:types>
+		<xs:schema targetNamespace="http://wso2.org/repos/wso2/people/jonathan/flickr.wsdl">
+
+            <xs:complexType name="flickrRequest">
+				<xs:sequence>
+					<xs:element name="api_key" type="xs:string"/>
+					<xs:any maxOccurs="unbounded" minOccurs="0"/>
+				</xs:sequence>
+			</xs:complexType>
+			<!-- flickr.people.* -->
+			<xs:element name="people.findByEmail">
+				<xs:complexType>
+					<xs:complexContent>
+						<xs:extension base="flickrRequest">
+							<xs:sequence>
+								<xs:element name="find_email" type="xs:string"/>
+							</xs:sequence>
+						</xs:extension>
+					</xs:complexContent>
+				</xs:complexType>
+			</xs:element>
+			<xs:element name="people.findByUsername">
+				<xs:complexType>
+					<xs:complexContent>
+						<xs:extension base="flickrRequest">
+							<xs:sequence>
+								<xs:element name="username" type="xs:string"/>
+							</xs:sequence>
+						</xs:extension>
+					</xs:complexContent>
+				</xs:complexType>
+			</xs:element>
+			<xs:element name="people.getInfo">
+				<xs:complexType>
+					<xs:complexContent>
+						<xs:extension base="flickrRequest">
+							<xs:sequence>
+								<xs:element name="user_id" type="xs:string"/>
+							</xs:sequence>
+						</xs:extension>
+					</xs:complexContent>
+				</xs:complexType>
+			</xs:element>
+			<xs:element name="people.getPublicGroups">
+				<xs:complexType>
+					<xs:complexContent>
+						<xs:extension base="flickrRequest">
+							<xs:sequence>
+								<xs:element name="user_id" type="xs:string"/>
+							</xs:sequence>
+						</xs:extension>
+					</xs:complexContent>
+				</xs:complexType>
+			</xs:element>
+			<xs:element name="people.getPublicPhotos">
+				<xs:complexType>
+					<xs:complexContent>
+						<xs:extension base="flickrRequest">
+							<xs:sequence>
+								<xs:element name="user_id" type="xs:string"/>
+								<xs:element name="extras" type="xs:string" minOccurs="0"/>
+								<xs:element name="per_page" type="xs:integer" minOccurs="0"/>
+								<xs:element name="page" type="xs:integer" minOccurs="0"/>
+							</xs:sequence>
+						</xs:extension>
+					</xs:complexContent>
+				</xs:complexType>
+			</xs:element>
+			<xs:element name="people.getUploadStatus">
+				<xs:complexType>
+					<xs:complexContent>
+						<xs:extension base="flickrRequest">
+							<xs:sequence>
+								<xs:element name="username" type="xs:string"/>
+							</xs:sequence>
+						</xs:extension>
+					</xs:complexContent>
+				</xs:complexType>
+			</xs:element>
+
+			<!-- flickr.photos.* -->
+			<xs:simpleType name="anyOrAll">
+				<xs:restriction base="xs:token">
+					<xs:enumeration value="any"/>
+					<xs:enumeration value="all"/>
+				</xs:restriction>
+			</xs:simpleType>
+			<xs:simpleType name="sortOrder">
+				<xs:restriction base="xs:token">
+					<xs:enumeration value="date-posted-asc"/>
+					<xs:enumeration value="date-posted-desc"/>
+					<xs:enumeration value="date-taken-asc"/>
+					<xs:enumeration value="date-taken-desc"/>
+					<xs:enumeration value="interestingness-desc"/>
+					<xs:enumeration value="interestingness-asc"/>
+					<xs:enumeration value="relevance"/>
+				</xs:restriction>
+			</xs:simpleType>
+			<xs:simpleType name="unixTimeStamp">
+				<xs:restriction base="xs:string"/>
+			</xs:simpleType>
+			<xs:element name="photos.search">
+				<xs:complexType>
+					<xs:complexContent>
+						<xs:extension base="flickrRequest">
+							<xs:sequence>
+								<xs:element name="user_id"          type="xs:string"     minOccurs="0"/>
+								<xs:element name="tags"             type="xs:string"     minOccurs="0"/>
+								<xs:element name="tag_mode"         type="anyOrAll"      minOccurs="0"/>
+								<xs:element name="text"             type="xs:string"     minOccurs="0"/>
+								<xs:element name="min_upload_date"  type="unixTimeStamp" minOccurs="0"/>
+								<xs:element name="max_upload_date"  type="unixTimeStamp" minOccurs="0"/>
+								<xs:element name="min_taken_date"   type="unixTimeStamp" minOccurs="0"/>
+								<xs:element name="max_taken_date"   type="unixTimeStamp" minOccurs="0"/>
+								<xs:element name="license"          type="xs:string"     minOccurs="0"/>
+								<xs:element name="sort"             type="sortOrder"     minOccurs="0"/>
+								<xs:element name="privacy_filter"   type="xs:integer"    minOccurs="0"/>
+								<xs:element name="bbox"             type="xs:string"     minOccurs="0"/>
+								<xs:element name="accuracy"         type="xs:integer"    minOccurs="0"/>
+								<xs:element name="machine_tags"     type="xs:string"     minOccurs="0"/>
+								<xs:element name="machine_tag_mode" type="anyOrAll"      minOccurs="0"/>
+								<xs:element name="group_id"         type="xs:string"     minOccurs="0"/>
+								<xs:element name="extras"           type="xs:string"     minOccurs="0"/>
+								<xs:element name="per_page"         type="xs:integer"    minOccurs="0"/>
+								<xs:element name="page"             type="xs:integer"    minOccurs="0"/>
+							</xs:sequence>
+						</xs:extension>
+					</xs:complexContent>
+				</xs:complexType>
+			</xs:element>
+			<xs:element name="test.echo">
+				<xs:complexType>
+					<xs:complexContent>
+						<xs:extension base="flickrRequest">
+							<xs:sequence>
+								<xs:any maxOccurs="unbounded"/>
+							</xs:sequence>
+						</xs:extension>
+					</xs:complexContent>
+				</xs:complexType>
+			</xs:element>
+			<!-- response -->
+			<xs:simpleType name="statType">
+				<xs:restriction base="xs:token">
+					<xs:enumeration value="ok"/>
+					<xs:enumeration value="fail"/>
+				</xs:restriction>
+			</xs:simpleType>
+            <xs:element name="rsp">
+                <xs:complexType>
+                    <xs:choice>
+                        <!--<xs:sequence>-->
+                        <xs:element name="err" form="unqualified">
+                            <xs:complexType>
+                                <xs:complexContent>
+                                    <xs:extension base="xs:anyType">
+                                        <xs:attribute name="code" type="xs:string"/>
+                                        <xs:attribute name="msg" type="xs:string"/>
+                                    </xs:extension>
+                                </xs:complexContent>
+                            </xs:complexType>
+                        </xs:element>
+                        <!--</xs:sequence>-->
+                        <!--<xs:sequence>-->
+                        <xs:any maxOccurs="unbounded"/>
+                        <!--</xs:sequence>-->
+                    </xs:choice>
+                    <xs:attribute name="stat" type="statType"/>
+                </xs:complexType>
+            </xs:element>
+
+		</xs:schema>
+	</wsdl:types>
+	<wsdl:interface name="flickr">
+		<wsdl:operation name="flickr.people.findByEmail" wsdlx:safe="true">
+			<wsdl:input element="people.findByEmail"/>
+			<wsdl:output element="rsp"/>
+		</wsdl:operation>
+		<wsdl:operation name="flickr.people.findByUsername" wsdlx:safe="true">
+			<wsdl:input element="people.findByUsername"/>
+			<wsdl:output element="rsp"/>
+		</wsdl:operation>
+		<wsdl:operation name="flickr.people.getInfo" wsdlx:safe="true">
+			<wsdl:input element="people.getInfo"/>
+			<wsdl:output element="rsp"/>
+		</wsdl:operation>
+		<wsdl:operation name="flickr.people.getPublicGroups" wsdlx:safe="true">
+			<wsdl:input element="people.getPublicGroups"/>
+			<wsdl:output element="rsp"/>
+		</wsdl:operation>
+		<wsdl:operation name="flickr.people.getPublicPhotos" wsdlx:safe="true">
+			<wsdl:input element="people.getPublicPhotos"/>
+			<wsdl:output element="rsp"/>
+		</wsdl:operation>
+		<wsdl:operation name="flickr.people.getUploadStatus" wsdlx:safe="true">
+			<wsdl:input element="people.getUploadStatus"/>
+			<wsdl:output element="rsp"/>
+		</wsdl:operation>
+
+		<wsdl:operation name="flickr.photos.search" wsdlx:safe="true">
+			<wsdl:input element="photos.search"/>
+			<wsdl:output element="rsp"/>
+		</wsdl:operation>
+		<wsdl:operation name="flickr.test.echo" wsdlx:safe="true">
+			<wsdl:input element="test.echo"/>
+			<wsdl:output element="rsp"/>
+		</wsdl:operation>
+	</wsdl:interface>
+
+	<wsdl:binding name="flickrHTTPBinding" interface="tns:flickr" type="http://www.w3.org/ns/wsdl/http">
+		<wsdl:operation ref="tns:flickr.people.findByEmail"
+			whttp:location="?method=flickr.people.findByEmail&amp;format=rest"/>
+		<wsdl:operation ref="tns:flickr.people.findByUsername"
+			whttp:location="?method=flickr.people.findByUsername&amp;format=rest"/>
+		<wsdl:operation ref="tns:flickr.people.getInfo"
+			whttp:location="?method=flickr.people.getInfo&amp;format=rest"/>
+		<wsdl:operation ref="tns:flickr.people.getPublicGroups"
+			whttp:location="?method=flickr.people.getPublicGroups&amp;format=rest"/>
+		<wsdl:operation ref="tns:flickr.people.getPublicPhotos"
+			whttp:location="?method=flickr.people.getPublicPhotos&amp;format=rest"/>
+		<wsdl:operation ref="tns:flickr.people.getUploadStatus"
+			whttp:location="?method=flickr.people.getUploadStatus&amp;format=rest"/>
+		<wsdl:operation ref="tns:flickr.photos.search"
+			whttp:location="?method=flickr.photos.search&amp;format=rest"/>
+		<wsdl:operation ref="tns:flickr.test.echo"
+			whttp:location="?method=flickr.test.echo&amp;format=rest"/>
+	</wsdl:binding>
+
+	<wsdl:service name="flickrService" interface="tns:flickr">
+		<wsdl:endpoint name="flickrREST" binding="tns:flickrHTTPBinding" address="http://api.flickr.com/services/rest/"/>
+	</wsdl:service>
+</wsdl:description>

Modified: trunk/wsas/java/modules/samples/conf/wsas-samples-codegen.xml
==============================================================================
--- trunk/wsas/java/modules/samples/conf/wsas-samples-codegen.xml	(original)
+++ trunk/wsas/java/modules/samples/conf/wsas-samples-codegen.xml	Sun Apr  8 09:57:37 2007
@@ -113,4 +113,15 @@
         <Emp>org.wso2.www.types.trader.exchange.mapper.service</Emp>
     </set>
 
-</config>
\ No newline at end of file
+    <!-- FlickrClient Sample-->
+    <set>
+        <uri>./FlickrClient/wsdl/FlickrService.wsdl</uri>
+        <o>./FlickrClient/generated</o>
+        <p>org.wso2.wsas.sample.flickr.client</p>
+        <d>adb</d>
+        <ns2p>http://wso2.org/repos/wso2/people/jonathan/flickr.wsdl=org.wso2.www.types.flickr.client</ns2p>
+        <u/>
+	<wv>2</wv>
+    </set>
+
+</config>




More information about the Wsas-java-dev mailing list