קבצים והגדרות נדרשים

בדף הזה מוסבר אילו קבצים צריך לכלול ב-API כדי להשתמש ב-Cloud Endpoints Frameworks for App Engine.

הפרויקט צריך להכיל לפחות את הקבצים הבאים:

קובץ ומיקום תיאור
/src/main/java/<packagepath>/<your_api_class>.java קובץ הכיתה (או קבצים, אם מטמיעים את ה-API בכמה כיתות) שמכיל את ה-API של ה-Backend.
/src/main/webapp/WEB-INF/appengine-web.xml קובץ תיאור הפריסה של אפליקציית האינטרנט שנדרש להגדרת App Engine.
/src/main/webapp/WEB-INF/web.xml קובץ תיאור פריסה סטנדרטי של אפליקציית אינטרנט של Java, הממפה כתובות URL ל-servlets ומידע אחר.

התוכן של כל אחד מהקבצים הנדרשים האלה מתואר בקטעים הבאים.

קובץ המחלקה של ה-API

התוכן הנדרש והאופציונלי של קובץ המחלקה (או הקבצים, אם משתמשים בAPI עם כמה מחלקות) מתואר באופן מלא בנושא הערות של נקודות קצה.

appengine-web.xml

קובץ appengine-web.xml משמש להגדרת התצורה של סביבת App Engine Standard כשפורסים את ה-API. מידע נוסף זמין במאמר appengine-web.xml Reference.

אלה תכני המינימום שנדרשים בקובץ הזה:

<appengine-web-app xmlns="http://appengine.google.com/ns/1.0">
    <runtime>java8</runtime>
    <threadsafe>true</threadsafe>

    <system-properties>
        <property name="java.util.logging.config.file" value="WEB-INF/logging.properties"/>
    </system-properties>
</appengine-web-app>

web.xml

משתמשים בקובץ web.xml כדי להגדיר את ה-servlet של Endpoints, שמטפל בבקשות נכנסות ומעביר אותן לשירות לקצה העורפי שפועל ב-App Engine. ה-servlet של Endpoints נדרש כדי ש-API יהיה מנוהל על ידי Cloud Endpoints.

אלה תכני המינימום שנדרשים בקובץ הזה:

<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
         http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
         version="3.1">
    <!-- Wrap the backend with Endpoints Frameworks v2. -->
    <servlet>
        <servlet-name>EndpointsServlet</servlet-name>
        <servlet-class>com.google.api.server.spi.EndpointsServlet</servlet-class>
        <init-param>
            <param-name>services</param-name>
            <param-value>com.example.skeleton.MyApi</param-value>
        </init-param>
    </servlet>
    <!-- Route API method requests to the backend. -->
    <servlet-mapping>
        <servlet-name>EndpointsServlet</servlet-name>
        <url-pattern>/_ah/api/*</url-pattern>
    </servlet-mapping>
</web-app>

מידע נוסף על web.xml זמין במאמר בנושא קובץ תיאור הפריסה: web.xml.