KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > espada > bugtracker > servlets > SignUp


1 /*
2 ====================================================================
3 Project Name: bugtracker
4 File Name: /src/com/espada/bugtracker/servlets/SignUp.java
5 Author: Kishan Peiris <kishan@espadanet.com>
6 Description: Add new user account's to bugtracker
7 CVS Repository: goliath:/projects/repository/cvsroot/
8 CVS Module: bugtracker
9 Version: CVS $Id: $
10 ====================================================================
11
12 */

13
14 package com.espada.bugtracker.servlets;
15
16
17
18 // webmacro resources
19
import org.webmacro.*;
20  import org.webmacro.broker.*;
21  import org.webmacro.resource.*;
22  import org.webmacro.servlet.WebContext;
23
24 // servlet libraries
25
import javax.servlet.http.*;
26  import javax.servlet.*;
27
28 // bugtracker java apps
29
import com.espada.bugtracker.app.*;
30
31
32 public class SignUp extends BTServlet
33 {
34
35
36
37    /** the default template to use **/
38    private static String JavaDoc defaultTemplate = "signup.wm";
39    private static String JavaDoc messages = "errorMesg.wm";
40
41
42    /** the message screen template to use **/
43    private String JavaDoc templateToUse = new String JavaDoc(defaultTemplate);
44
45
46
47    /**************************** Start Of Method addUser ********************************************/
48    /** Adding new user accounts */
49
50    public int addUser(HttpServletRequest request, HttpServletResponse response)
51    {
52
53
54         HttpSession session = request.getSession();
55
56         int done = 0;
57
58         if (request.getParameter("add") != null)
59         {
60
61            templateToUse = messages;
62
63            done = User.createUser(request.getParameter("username"), request.getParameter("pwd"), request.getParameter("email") );
64            if((done == 0) || (done == 1))
65            {
66                session.setAttribute( "USER",new String JavaDoc(request.getParameter("username")) );
67                session.setAttribute( "PW",new String JavaDoc(request.getParameter("pwd")) );
68            }
69
70
71            return done;
72
73         } // end if
74
else
75          {
76              templateToUse = defaultTemplate;
77
78              return -1;
79          }
80
81
82
83     } //end of method
84

85    /**************************** End Of Method addUser ********************************************/
86
87
88    /**
89      */

90    public void doGet(HttpServletRequest req, HttpServletResponse resp)
91    {
92         try
93        {
94          try
95          {
96
97             // create a context for the current request
98
WebContext c = _wm.getWebContext(req,resp);
99
100             /******************************************************************/
101
102             String JavaDoc s = "http://" + req.getServerName();
103             c.put("serverName",s);
104             c.put("loggedIn",String.valueOf(new Boolean JavaDoc(false)));
105
106             /*****************************************************************/
107
108
109             // create user accounts at bugstracker
110

111             templateToUse = new String JavaDoc(defaultTemplate);
112             String JavaDoc ss = req.getParameter("visited");
113
114             if(ss != null)
115             {
116
117                if(ss.equals("yes"))
118                {
119
120                  int errorCode = addUser(req,resp);
121
122                  c.put("errorId",String.valueOf(errorCode));
123
124                }
125             }
126
127
128             // get the template we intend to execute
129
Template t = _wm.getTemplate(templateToUse);
130
131             // Create FastWriter for fast output encoding
132
FastWriter fw = new FastWriter(resp.getOutputStream(),resp.getCharacterEncoding());
133
134
135             // write the template to the output, using our context
136
t.write(fw,c);
137             fw.close();
138
139
140          }
141              catch (org.webmacro.NotFoundException e)
142              {
143                 FastWriter out = new FastWriter(resp.getOutputStream(),resp.getCharacterEncoding());
144
145                 out.write("ERROR! Could not locate template " + templateToUse + ", check that your template path is set properly in WebMacro.properties");
146
147                 out.close();
148              }
149
150              catch (org.webmacro.ContextException e)
151              {
152
153                 FastWriter out = new FastWriter(resp.getOutputStream(),resp.getCharacterEncoding());
154
155                 out.write("ERROR! Could not locate required data in the Context.");
156
157                 out.close();
158              }
159       }
160         catch (java.io.IOException JavaDoc e)
161         {
162
163           // what else can we do?
164
System.out.println("ERROR: IOException while writing to servlet output stream.");
165         }
166
167     } //end of method
168

169 } //end of class
Popular Tags