Hi,
I was trying to do some simple JDO queries in order to find my way in
java google app engine.
I have an persistent object where I store information about users,
called UserData
I also have made a class DAO where I have methods for creating new
users for checking if a user exist and to show data for users.
I created 2 records successfully but I can't read them.
The error that I get is
HTTP ERROR 500
Problem accessing /. Reason:
com.awt.oat.dao.UserDao.showUserData()V
Caused by:
java.lang.NoSuchMethodError: com.awt.oat.dao.UserDao.showUserData()V
at org.apache.jsp.auction_jsp._jspService(auction_jsp.java:89)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
....
.... and a lot more
....
I'm sure that I 'm doing something really stupid. Please someone to
help me...
Here is my DAO class code:
package com.awt.oat.dao;
import javax.jdo.PersistenceManager;
import com.awt.oat.PMF;
import com.awt.oat.model.UserData;
import com.google.appengine.api.users.User;
import javax.jdo.Query;
import java.util.List;
import java.util.Date;
import javax.jdo.JDOObjectNotFoundException;
public class UserDao {
public void createUser(String uniqueID, String userName, String email)
{
Date date = new Date();
UserData newUser = new UserData(uniqueID, userName, email,
date);
PersistenceManager pm = PMF.get().getPersistenceManager();
try {
pm.makePersistent(newUser);
}finally {
pm.close();
}
}
public void showUserData(){
PersistenceManager pm = PMF.get().getPersistenceManager();
Query query = pm.newQuery(UserData.class);
try{
List<UserData> results = (List<UserData>)query.execute();
if (results.iterator().hasNext()) {
for(UserData u : results){
System.out.println("<table border='1'>" +
"<tr><td>username</td><td>" +
u.getUserName() + "</tr>"
+ "<tr><td>email</td><td>" +
u.getEmail() + "</td></tr></
table>");
}
} else {
System.out.printf("<p>No results in the datastore</p>");
}
}finally{
query.closeAll();
}
}
}
and here my jsp file
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ page import="java.util.List" %>
<%@ page import="javax.jdo.PersistenceManager" %>
<%@ page import="com.google.appengine.api.users.User" %>
<%@ page import="com.google.appengine.api.users.UserService" %>
<%@ page import="com.google.appengine.api.users.UserServiceFactory" %>
<%@ page import="com.awt.oat.dao.UserDao" %>
<%@ page import="java.io.*" %>
<html>
<head>
<link type="text/css" rel="stylesheet" href="/stylesheets/
main.css" />
</head>
<body>
<%
UserService userService = UserServiceFactory.getUserService();
User user = userService.getCurrentUser();
if (user != null) {
%>
<p>Hello, <%= user.getNickname() %>! (You can
<a href="<%= userService.createLogoutURL(request.getRequestURI())
%>">sign out</a>.)</p>
<%
} else {
%>
<a href="<%= userService.createLoginURL(request.getRequestURI())
%>">Sign in</a>
<%
}
UserDao dao = new UserDao();
//dao.createUser(user.getUserId(), user.getNickname(),
user.getEmail()); this one works creates new users in the database
dao.showUserData(); //this gives me error
%>
</body>
</html>
--
You received this message because you are subscribed to the Google Groups
"Google App Engine for Java" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/google-appengine-java?hl=en.