0

私はグーグルAPIに不慣れです。GoogleドキュメントからDocumentListFeedを読み取るための簡単なWebアプリケーション(Java EE)を作成しようとしています。サーブレットの私のコードは次のとおりです。

protected void doGet(HttpServletRequest request、HttpServletResponse response)throws ServletException、IOException {

    try 
    {   
        DocsService service = new DocsService("Document List Demo");
        service.setUserCredentials(NAME, PASSWORD);

        response.getWriter().println("helloooooo");


        //URL documentListFeedUrl = new URL("http://docs.google.com/feeds/documents/private/full");     
        URL documentListFeedUrl = new URL("https://docs.google.com/feeds/default/private/full?v=3");        
        DocumentListFeed feed = service.getFeed(documentListFeedUrl, DocumentListFeed.class);

        for(DocumentListEntry entry : feed.getEntries())
        {
            response.getWriter().println(entry.getTitle().getPlainText());
        }



    }   

    catch (Exception e)
    {

        response.getWriter().println(e);
    }
}

しかし、それは私にエラーを示しています:java.lang.NoClassDefFoundError:com / google / gdata / client / docs / DocsService

GlassfishサーバーとEcllipseを使用しています。追加された外部jarファイル:activation.jar、guava-r07.jar、mail.jar、servlet.jar、gdata-client-1.0.jar、gdata-client-meta-1.0.jar、gdata-core-1.0.jar、 gdata-media-1.0.jar、gdata-docs-3.0.jar、gdata-docs-meta-3.0.jar。

これと同じコードをJavaStandardEditionにコピーしましたが、正常に動作しています。これがJavaEEで機能しない理由を教えてください。GlassFishサーバーに問題がありますか?

4

1 に答える 1

0

これは、jarがGlassfishサーバーのクラスパスに存在しないことを意味します。リストしたすべてのjarファイルをyuorglassfishサーバーのクラスパスに追加します。Glassfishの専門家ではないため、サーバーにjarファイルを追加するのを手伝うことはできません。weblogicの場合、プロジェクトのAPP-INFディレクトリにすべてのjarをパッケージ化する必要があります。

それが役に立てば幸い。

于 2012-12-19T14:35:35.893 に答える