博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
myeclipse 修改项目名Tomcat启动项目报错java.lang.IllegalArgumentException: Can't convert argument: null...
阅读量:7238 次
发布时间:2019-06-29

本文共 4246 字,大约阅读时间需要 14 分钟。

一、Tomcat启动报错:

有时候我们会避免项目重名,在导入项目时会修改项目名称。
修改项目名称后启动该项目至tomcat,报错:java.lang.IllegalArgumentException: Can't convert argument: null
二、问题分析:
因为MyEclipse在修改项目名时候,自动更新部署了web.xml文件并且重新生成了xml文件的头部声明. 会将标签修改为 <javaee:param-name>这样的类型。
三、解决问题:
修改项目的web.xml,将其中带有javaee:的标签中的javaee:删掉即可,也可以直接Ctrl+F将javaee:直接全部替换为空。
四、报错信息如下:
java.lang.IllegalArgumentException: Can't convert argument: null
at org.apache.tomcat.util.IntrospectionUtils.convert(IntrospectionUtils.java:999)
at org.apache.tomcat.util.digester.CallMethodRule.end(CallMethodRule.java:523)
at org.apache.tomcat.util.digester.Rule.end(Rule.java:229)
at org.apache.tomcat.util.digester.Digester.endElement(Digester.java:1140)
at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.endElement(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanEndElement(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(Unknown Source)
at org.apache.tomcat.util.digester.Digester.parse(Digester.java:1644)
at org.apache.catalina.startup.ContextConfig.applicationWebConfig(ContextConfig.java:365)
at org.apache.catalina.startup.ContextConfig.start(ContextConfig.java:1066)
at org.apache.catalina.startup.ContextConfig.lifecycleEvent(ContextConfig.java:261)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4252)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525)
at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:627)
at org.apache.catalina.startup.HostConfig.deployDescriptors(HostConfig.java:553)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:488)
at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1149)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:719)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
at org.apache.catalina.core.StandardService.start(StandardService.java:516)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
at org.apache.catalina.startup.Catalina.start(Catalina.java:578)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)
问题是由于在Eclipse下重构JEE项目名时,Eclipse自动更新了部署文件web.xml,重新生成了xml文件的头部声明,新增加了javaee的命名空间:如下
<servlet>
  <javaee:display-name>MessageBrokerServlet</javaee:display-name>
  <servlet-name>MessageBrokerServlet</servlet-name>
  <servlet-class>flex.messaging.MessageBrokerServlet</servlet-class>
  <init-param>
    <javaee:param-name>services.configuration.file</javaee:param-name>
    <javaee:param-value>/WEB-INF/flex/services-config.xml</javaee:param-value>
  </init-param>
  <load-on-startup>1</load-on-startup>
</servlet>
将标签 <javaee:param-name> 中的javaee:删掉就完美解决问题,直接Ctrl+F将javaee:直接全部替换为空。 --------------------- 本文来自 Lemyou 的CSDN 博客 ,全文地址请点击:https://blog.csdn.net/Lemyou/article/details/80373024?utm_source=copy 

转载于:https://www.cnblogs.com/gxr-tygy/p/9728870.html

你可能感兴趣的文章
图像处理之基础---滤波器之高斯低通滤波器3c代码实现yuv,rgb
查看>>
windows程序内部运行机制
查看>>
访问svc 文件,编译器错误消息: CS0016,未能写入输出文件
查看>>
Spring中bean的范围
查看>>
(混合背包 多重背包+完全背包)The Fewest Coins (poj 3260)
查看>>
畅通工程 - 并查集的应用
查看>>
OpenCv图像像素操作
查看>>
myeclipse快捷键大全
查看>>
编程之美1.2 | 中国象棋将帅问题
查看>>
Matplotlib学习---用matplotlib画阶梯图(step plot)
查看>>
Linux非ROOT(普通用户)环境安装/启动/运行 MySQL server CentOS7为例
查看>>
latex 技巧汇总
查看>>
SpringMVC配置解决中文乱码的过滤器
查看>>
第28章 高级分组函数
查看>>
542. 01 Matrix
查看>>
centos7备份还原与grub2引导和rescue模式修改root密码
查看>>
神经网络的基础-前向传播
查看>>
使用VsCode自带的Emmet语法
查看>>
基于 REST 的 Web 服务:基础
查看>>
IDEA入门级使用教程
查看>>