转自:https://blog.csdn.net/ouyangtianhan/article/details/6797999
Unable to find required classes (javax.activation.DataHandler and javax.mail.internet.MimeMultipart). Attachment support is disabled
事实上这个问题很简单,我也是搜索了很长时间。但因为这个只是警告,不是出错。因此,只要新添一个log4j,便可以设定提示的警告状态。
错误原因:需要mail.jar和activation.jar。
一般的解决办法是:
1) 下载javamail和jaf,解压出mail.jar和activation.jar
http://java.sun.com/products/javamail/downloads/index.html
http://java.sun.com/products/javabeans/glasgow/jaf.html#download
2) 把mail.jar和activation.jar放到%AXIS_HOME%/WEB-INF/lib目录下
3) 将.jar文件添加到%CLASSPATH%
这个办法只会出现新的问题,如no manifiest section for signature file entry /DataContentHandlerFactory,因为需要signture file
但其实这个警告是可以忽略的,方法很简单
建立一个新 log4j.properties在JAR的首目录下,log4j.rootLogger=ERROR, Console
====== log4j.properties ====
log4j.rootLogger=ERROR, Console
log4j.category.org.apache.struts=INFO
log4j.category.org.hibernate=INFO
log4j.category.tools=DEBUG,
log4j.additivity.tools=true
log4j.category.ocd=DEBUG
log4j.additivity.ocd=true
log4j.appender.Console=org.apache.log4j.ConsoleAppender
log4j.appender.Console.layout=org.apache.log4j.PatternLayout
log4j.appender.Console.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n
====== end =====
====== build.xml ====
<target name="makejarSOAP" depends="cleanSOAP" description="Build soap jar">
<jar destfile="${build.dir}/${soap.prefixe}.jar" basedir="${classes.dir}">
<exclude name="test/**" />
<zipfileset src="${webapp.dir}/WEB-INF/lib/axis.jar" />
<zipfileset src="${webapp.dir}/WEB-INF/lib/jargs.jar" />
<zipfileset src="${webapp.dir}/WEB-INF/lib/jaxrpc.jar" />
<zipfileset src="${webapp.dir}/WEB-INF/lib/saaj.jar" />
<zipfileset src="${webapp.dir}/WEB-INF/lib/wsdl4j-1.5.1.jar" />
<zipfileset src="${webapp.dir}/WEB-INF/lib/commons-logging.jar" />
<zipfileset src="${webapp.dir}/WEB-INF/lib/commons-discovery-0.2.jar" /><zipfileset src="${webapp.dir}/WEB-INF/lib/log4j-1.2.9.jar" />
<manifest>
<attribute name="Main-Class" value="ocd.wsclient.WsClient"/>
</manifest>
</jar>
<javac classpath="${soap.classes.dir}" srcdir="${soap.src.dir}" nowarn="true">
<include name="${webapp.dir}/WEB-INF/lib/jargs.jar"/>
</javac>
</target>
====== end =====
警告就会不再显示了