Sunday, April 22, 2012

com.google.appengine.repackaged.com.google.protobuf.GeneratedMessage is a restricted class

I'm getting this message whenever I try to connect google cloud sql.
I'm using local development server with jdk version 1.6.4.
HTTP ERROR 500
Problem accessing /uni_cloud. Reason:
com.google.appengine.repackaged.com.google.protobuf.GeneratedMessage
is a restricted class. Please see the Google  App Engine developer's
guide for more details.
Caused by:
java.lang.NoClassDefFoundError:
com.google.appengine.repackaged.com.google.protobuf.GeneratedMessage
is a restricted class. Please see the Google  App Engine developer's
guide for more details.
        at
com.google.appengine.tools.development.agent.runtime.Runtime.reject(Runtime .java:
51)
        at
com.google.appengine.repackaged.com.google.protobuf.GeneratedMessage.<clini t>(GeneratedMessage.java:
38)
        at
com.google.cloud.sql.jdbc.internal.AbstractSqlClient.createConnectRequest(A bstractSqlClient.java:
222)
        at
com.google.cloud.sql.jdbc.internal.SqlProtoClient.openConnection(SqlProtoCl ient.java:
57)
        at com.google.cloud.sql.jdbc.Driver.connect(Driver.java:66)
        at com.google.cloud.sql.jdbc.Driver.connect(Driver.java:26)
        at java.sql.DriverManager.getConnection(Unknown Source)
        at java.sql.DriverManager.getConnection(Unknown Source)
        at org.uni_cloud.Uni_cloudServlet.service(Uni_cloudServlet.java:37)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
        at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:
511)
        at org.mortbay.jetty.servlet.ServletHandler
$CachedChain.doFilter(ServletHandler.java:1166)
        at
com.google.appengine.tools.development.HeaderVerificationFilter.doFilter(He aderVerificationFilter.java:
35)
        at org.mortbay.jetty.servlet.ServletHandler
$CachedChain.doFilter(ServletHandler.java:1157)
        at
com.google.appengine.api.blobstore.dev.ServeBlobFilter.doFilter(ServeBlobFi lter.java:
60)
        at org.mortbay.jetty.servlet.ServletHandler
$CachedChain.doFilter(ServletHandler.java:1157)
        at
com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(Trans actionCleanupFilter.java:
43)
        at org.mortbay.jetty.servlet.ServletHandler
$CachedChain.doFilter(ServletHandler.java:1157)
        at
com.google.appengine.tools.development.StaticFileFilter.doFilter(StaticFile Filter.java:
122)
        at org.mortbay.jetty.servlet.ServletHandler
$CachedChain.doFilter(ServletHandler.java:1157)
        at
com.google.appengine.tools.development.BackendServersFilter.doFilter(Backen dServersFilter.java:
97)
        at org.mortbay.jetty.servlet.ServletHandler
$CachedChain.doFilter(ServletHandler.java:1157)
        at
org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:
388)
        at
org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:
216)
        at
org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:
182)
        at
org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:
765)
        at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:
418)
        at
com.google.appengine.tools.development.DevAppEngineWebAppContext.handle(Dev AppEngineWebAppContext.java:
78)
        at
org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:
152)
        at com.google.appengine.tools.development.JettyContainerService
$ApiProxyHandler.handle(JettyContainerService.java:369)
        at
org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:
152)
        at org.mortbay.jetty.Server.handle(Server.java:326)
        at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:
542)
        at org.mortbay.jetty.HttpConnection
$RequestHandler.headerComplete(HttpConnection.java:923)
        at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:547)
        at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212)
        at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
        at
org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:
409)
        at org.mortbay.thread.QueuedThreadPool
$PoolThread.run(QueuedThreadPool.java:582)
Powered by Jetty://


HERE IS CODE THAT I'm RUNNING 
package org.uni_cloud; 
import java.io.IOException;
import java.io.PrintWriter; 

import javax.servlet.http.*;
import com.google.appengine.api.rdbms.AppEngineDriver; 

import java.sql.*;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; 

@SuppressWarnings("serial")
public class Uni_cloudServlet extends HttpServlet {
        @Override
        public void doGet(HttpServletRequest req, HttpServletResponse resp)
                        throws IOException {
                this.service(req, resp);
        } 

        @Override
        public void doPost(HttpServletRequest req, HttpServletResponse resp)
                        throws IOException {
                this.service(req, resp);
        } 

        public void service(HttpServletRequest req, HttpServletResponse resp)
throws IOException {

                PrintWriter out = resp.getWriter();
                Connection c =null;
                resp.setContentType("text/html; charset=utf-8"); 

                try{
                        DriverManager.registerDriver(new AppEngineDriver());
                        c = DriverManager.getConnection("jdbc:google:rdbms://uni-
cloud:unicloud/uni_cloud_db"); 

                        String query = "insert into user (username, type)values (?, ?)";
                        PreparedStatement stmt = c.prepareStatement(query);
                        stmt.setString(1, "044-bscs-08");
                        stmt.setString(2, "student"); 

                        int success = 2;
                        success = stmt.executeUpdate();
                        if(success == 1) {
                                out.println("<html><head></head><body>Success...</body></html>");
                        } else if (success == 0) {
                                out.println("<html><head></head><body>Failure!</body></html>");
                        } 

                }catch(Exception exp){ 
                }
        } 

==========================
web.xml 
==========================
<?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>Uni_cloud</servlet-name>
                <servlet-class>org.uni_cloud.Uni_cloudServlet</servlet-class>
        </servlet>
        <servlet-mapping>
                <servlet-name>Uni_cloud</servlet-name>
                <url-pattern>/uni_cloud</url-pattern>
        </servlet-mapping>
        <welcome-file-list>
                <welcome-file>index.html</welcome-file>
        </welcome-file-list>
</web-app>
please help me out... 


--
Regards:

M.Nasir

No comments:

Post a Comment