2013-11-14 102 views
2

我正在使用'聲明'現有的Java REST(使用Jersey)項目。 我有build.xml和enunciate.xml文件:創建輸出文件docs.zip,但解壓縮此文件後,我有: css/dir, js/dir, robots.txt,model.html,index.html, favicon.ico,crossdomain.xml,application.wadl,apple-touch-icon.png文件。聲明爲現有的Java REST API創建文檔

index.html和model.html從我的Java REST代碼沒有任何文檔。 任何人都可以幫助我嗎? 我沒有'發音'的經驗。

謝謝,

--->這是REST代碼示例之一:

@Path( 「/ {spacecraftId} /登錄」)

公共類UserLogHandler 實現ProcessCommunicationFacilityFailureListenerInterface, MessageCustomerInterface, IMessageAvailable {

/** 
* Retrieve log file information from MySQL database: 
* 
*/ 
@GET 
@Produces(MediaType.TEXT_XML) 
public Response retrieveLogFromDatabase(
     @PathParam("spacecraftId") String spacecraftId, 
     @Context HttpServletRequest servletRequest) 
{ 
} 

}

--->的 '的build.xml' 文件:

<!--The enunciate classpath points to all the jars in the "lib" directory.--> 
<path id="enunciate.classpath"> 

<pathelement path="${acmd-class-dir}:${mdasclasses.dir}"/> 

    <fileset dir="/TPS/V19.0.2"> 
    <include name="xerces/xercesImpl.jar"/> 
    <include name="xerces/xml-apis.jar"/> 
    <include name="jdkaddons/jdom.jar"/> 
    <include name="jdkaddons/mail.jar"/> 
    <include name="jdkaddons/commons-codec.jar"/> 
    <include name="jdkaddons/asm-3.1.jar"/> 
    <include name="jdkaddons/jersey-core-1.7.jar"/> 
    <include name="jdkaddons/jersey-server-1.7.jar"/> 
    <include name="jdkaddons/jsr311-api-1.1.1.jar"/> 
    <include name="jdkaddons/jersey-client-1.7.jar"/> 
    <include name="jdkaddons/jersey-multipart-1.7.jar"/> 
    </fileset> 


    <fileset dir="${enunciate.home}/lib"> 
    <include name="*.jar"/> 
    </fileset> 

    <fileset dir="${enunciate.java}"> 
    <include name="lib/tools.jar"/> 
    </fileset>   

</path> 

<!--define the task...--> 
<taskdef name="enunciate" classname="org.codehaus.enunciate.main.EnunciateTask"> 
    <classpath refid="enunciate.classpath"/> 
</taskdef> 

<enunciate basedir="./" verbose="true" configFile="./enunciate.xml" > 

    <include name="**/*.java"/> 
    <classpath refid="enunciate.classpath"/> 
    <export artifactId="docs" destination="./docs.zip"/> 
    <javacArgument argument="-g"/> 
</enunciate> 

--->的 'enunciate.xml' 文件:

<api-classes> 
    <include pattern="/tps/tomcat/lib/servlet-api.jar"/>> 

    <exclude pattern="com.sun.jersey.multipart.FormDataParam"/> 
</api-classes> 

<services> 
    <rest defaultRestSubcontext="api"> 
    </rest> 
</services> 

<webapp disabled="true"> 
</webapp> 

<modules> 
    <disable-rule id="csharp.warnings"/> 
    <disable-rule id="c-warnings"/> 
    <disable-rule id="obj-c.warnings"/> 
    <basic-app disabled="true"/> 
    <c disabled="true"/> 
    <csharp disabled="true"/> 
    <jaxws-ri disabled="true"/> 
    <obj-c disabled="true"/> 
    <amf disabled="true"/> 
    <gwt disabled="true"/> 
    <jboss disabled="true"/> 
    <object-c disabled="true"/> 
    <rubby disabled="true"/> 
    <jaxws-client disabled="true"/> 

    <jersey disabled="false"/> 

    <docs title="ICMD API" docsDir="./" splashPackage="cmd.acmd_mdc_servlet" includeDefaultDownloads="true" includeExampleXml="false" disableRestMountpoint="true" copyright="copyright" forceExampleJson="true"/> 
</modules> 

+0

問題修正:我需要在下的標記中包含Java軟件包名稱。 – derek

回答

2

您的「包含模式」不正確。 「包括」是指,而不是罐子。因此,它可能看起來像:

<include pattern="com.mycompany.api.resources.**"/> 

此外,還要確保所有這些類是在classpath中,當你調用字正腔圓。