Исключение "java.lang.IllegalArgumentException: имя для типа аргумента [java.lang.String] недоступно" проблема сборки муравья - PullRequest
0 голосов
/ 27 марта 2019

У меня есть проект, который работает нормально, когда его файл войны генерируется с помощью файла войны экспорта eclipse. Я сгенерировал файл war через ant build, используя build.xml, импортировал файл war как проект и запустил его. Пользовательский интерфейс приложения появляется, но когда я тестирую его функциональность, он выдает следующее исключение.

SEVERE: Servlet.service () для сервлета [rest] в контексте с путем [/ crest] вызвала исключение [Ошибка обработки запроса; Вложенное исключение - java.lang.IllegalArgumentException: имя для типа аргумента [java.lang.String] недоступно, и информация об имени параметра также не найдена в файле класса.] с первопричиной java.lang.IllegalArgumentException: имя для типа аргумента [java.lang.String] недоступно, и информация об имени параметра также не найдена в файле класса. в org.springframework.util.Assert.notNull (Assert.java:112) в org.springframework.web.method.annotation.AbstractNamedValueMethodArgumentResolver.updateNamedValueInfo (AbstractNamedValueMethodArgumentResolver.java:138) в org.springframework.web.method.annotation.AbstractNamedValueMethodArgumentResolver.getNamedValueInfo (AbstractNamedValueMethodArgumentResolver.java:117) в org.springframework.web.method.annotation.AbstractNamedValueMethodArgumentResolver.resolveArgument (AbstractNamedValueMethodArgumentResolver.java:84) в org.springframework.web.method.support.HandlerMethodArgumentResolverComposite.resolveArgument (HandlerMethodArgumentResolverComposite.java:79) в org.springframework.web.method.support.InvocableHandlerMethod.getMethodArgumentValues ​​(InvocableHandlerMethod.java:157) в org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest (InvocableHandlerMethod.java:124) в org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle (ServletInvocableHandlerMethod.java:104) в org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandleMethod (RequestMappingHandlerAdapter.java:748) в org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal (RequestMappingHandlerAdapter.java:689) в org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle (AbstractHandlerMethodAdapter.java:83) в org.springframework.web.servlet.DispatcherServlet.doDispatch (DispatcherServlet.java:945) в org.springframework.web.servlet.DispatcherServlet.doService (DispatcherServlet.java:876) в org.springframework.web.servlet.FrameworkServlet.processRequest (FrameworkServlet.java:931) в org.springframework.web.servlet.FrameworkServlet.doGet (FrameworkServlet.java:822) на javax.servlet.http.HttpServlet.service (HttpServlet.java:621) в org.springframework.web.servlet.FrameworkServlet.service (FrameworkServlet.java:807) на javax.servlet.http.HttpServlet.service (HttpServlet.java:722) в org.apache.catalina.core.ApplicationFilterChain.internalDoFilter (ApplicationFilterChain.java:304) в org.apache.catalina.core.ApplicationFilterChain.doFilter (ApplicationFilterChain.java:210) в org.apache.catalina.core.StandardWrapperValve.invoke (StandardWrapperValve.java:240) в org.apache.catalina.core.StandardContextValve.invoke (StandardContextValve.java:164) в org.apache.catalina.authenticator.AuthenticatorBase.invoke (AuthenticatorBase.java:462) в org.apache.catalina.core.StandardHostValve.invoke (StandardHostValve.java:164) в org.apache.catalina.valves.ErrorReportValve.invoke (ErrorReportValve.java:100) в org.apache.catalina.valves.AccessLogValve.invoke (AccessLogValve.java:562) в org.apache.catalina.core.StandardEngineValve.invoke (StandardEngineValve.java:118) в org.apache.catalina.connector.CoyoteAdapter.service (CoyoteAdapter.java:395)в org.apache.coyote.http11.Http11Processor.process (Http11Processor.java:250) в org.apache.coyote.http11.Http11Protocol $ Http11ConnectionHandler.process (Http11Protocol.java:188) в org.apache.coyote.http11.Http11Protocol $ Http11ConnectionHandler.process (Http11Protocol.java:166) в org.apache.tomcat.util.net.JIoEndpoint $ SocketProcessor.run (JIoEndpoint.java:302) в java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1145) в java.util.concurrent.ThreadPoolExecutor $ Worker.run (ThreadPoolExecutor.java:615) at java.lang.Thread.run (Thread.java:724)

build.xml

`

<?xml version="1.0" encoding="UTF-8"?>
<project name="APPNAME" default="deploy-tomcat">
<property file="build.properties"/>
<!-- Define the CLASSPATH -->
<path id="compile.classpath">
<fileset dir="../WebContent/WEB-INF/lib">
  <include name="*.jar"/>
</fileset> 
</path>
<target name="path-test">
<property environment="env"/>
<echo message="Path is :${env.Path}"/>
</target>
<target name="init"  description="init">
<property environment="env"/>
 <echo message="Path is :${env.Path}"/>
<mkdir dir="../dest"/>
 <mkdir dir="../target"/>
</target>
<target name="clean" description="clean" depends ="init">
<echo>Cleaning out directories</echo>
 <delete file="../WebContent/WEB-INF/lib/APPNAME.jar"/>
<delete file="../target/APPNAME.war"/>
<delete>
<fileset dir="../dest" includes="**/*.class"/>
 </delete>
</target>
<target name="compile" depends="init, clean"
description="Compile Java sources and copy to WEB-INF/classes dir">
<javac source="1.7" target="1.7" srcdir="../src"
destdir="../dest">
<classpath refid="compile.classpath"/>
 </javac> 
</target>
<target name="jar"  depends="compile" description="jar">
<jar destfile="../WebContent/WEB-INF/lib/APPNAME.jar" basedir="../dest">
 </jar>   
 </target>
 <target name="build-war" depends = "jar">
<war destfile="../target/APPNAME.war"webxml="../WebContent/WEB-INF/web.xml">
<fileset dir="../WebContent">
<include name="**/*.*"/>
</fileset>    
</war>
</target> 
<target name="deploy-tomcat" depends="build-war">
<antcall target="tomcat-shutdown"></antcall>
<sleep seconds="5"/>
<echo>Deleting ${tomcat.dfoflag.dir}</echo>
<delete dir="${tomcat.APPNAME.dir}"/>
 <copy file="../target/APPNAME.war" todir="${tomcat.home}/webapps">
</copy>
<antcall target="tomcat-startup"></antcall>
</target>
</project>

` Я думаю, что проблема в том, что весенние банки не компилируются должным образом во время строительства войны. Кто-нибудь может предложить какое-либо решение?

...