¤³¤Î¥Ú¡¼¥¸¤òdel.icio.us¤ËÄɲà ¤³¤Î¥Ú¡¼¥¸¤ò¤Ï¤Æ¤Ê¥Ö¥Ã¥¯¥Þ¡¼¥¯¤ËÄɲ䳤Υڡ¼¥¸¤ò´Þ¤à¤Ï¤Æ¤Ê¥Ö¥Ã¥¯¥Þ¡¼¥¯ ¤³¤Î¥Ú¡¼¥¸¤òlivedoor ¥¯¥ê¥Ã¥×¤ËÄɲà ¤³¤Î¥Ú¡¼¥¸¤òYahoo!¥Ö¥Ã¥¯¥Þ¡¼¥¯¤ËÄɲ䳤Υڡ¼¥¸¤ò´Þ¤àYahoo!¥Ö¥Ã¥¯¥Þ¡¼¥¯
Top / Java / TIPS½¸(¼ç¤Ë´Ä¶­)

Xerces´ØÏ¢¤Î¾ã³²¡£

¿Æ¥í¡¼¥À¡¼¤Ëxml-apis.jar¡¢»Ò¥í¡¼¥À¡¼¤ËxercesImpl.jar¤ò¥í¡¼¥É¤µ¤»¤¿¤È¤³¤í¡¢

loader constraints violated when linking org/w3c/dom/Document class 

¤È¥¨¥é¡¼¤Ë¤Ê¤Ã¤¿¡£xml-apis.jar¤â»Ò¥í¡¼¥À¤ËÆÉ¤ß¹þ¤Þ¤»¤ë¤³¤È¤Ç¡¢²ò·è¡£

¥í¡¼¥É¤µ¤ì¤Æ¤¤¤ë¥¯¥é¥¹¤¬¡¢¤É¤Î¥Õ¥¡¥¤¥ë¤«¤é¥í¡¼¥É¤µ¤ì¤Æ¤¤¤ë¤«¤ò³Îǧ¤¹¤ë(²ò·è)¡£

System.out.println("Loaded: "+ clazz.getResource("/"+clazz.getName().replace('.','/')+".class"));

¥í¡¼¥É¤µ¤ì¤Æ¤¤¤ë¥¯¥é¥¹¤¬¡¢¤É¤Î¥Õ¥¡¥¤¥ë¤«¤é¥í¡¼¥É¤µ¤ì¤Æ¤¤¤ë¤«¤ò³Îǧ¤¹¤ë*1

public void print(String clazz) {
	ClassLoader loader = getClass().getClassLoader();
	System.out.println("----- " + clazz + " -----");
	try {
		Enumeration enum = loader.getResources(clazz);
		while (enum.hasMoreElements()) {
			URL resource = (URL) enum.nextElement();
			System.out.println(resource);
		}
	} catch (IOException ex) {
		ex.printStackTrace(System.err);
	}
}

Class#getResource() ¤ò¤¤¤í¤¤¤í¤Ê´Ä¶­¤Ç

Tomcat¤Ç¤Ï

System.out.println(Log4jInitServlet.class.getResource("/"));
System.out.println(Log4jInitServlet.class.getResource("."));
System.out.println(Log4jInitServlet.class.getResource("lib"));
System.out.println(Log4jInitServlet.class.getResource("/../lib/"));

¤Î·ë²Ì¤Ï

file:/C:/Documents and Settings/xxxx/My Documents/IBM/wssd/workspace/xxxx/Web Content/WEB-INF/classes/
null
null
file:/C:/Documents and Settings/xxxx/My Documents/IBM/wssd/workspace/xxxx/Web Content/WEB-INF/lib/

WAS¤Ç¤Ï(Àµ³Î¤Ë¤ÏWSSD)

file:/C:/Program%20Files/IBM/WebSphere%20Studio/Site%20Developer/v5.1/runtimes/base_v5/properties/
file:/C:/Documents and Settings/m-kino/My Documents/IBM/wssd/workspace/FrameworkWebApplication/Web Content/WEB-INF/classes/kino/servlet/init/
null
file:/C:/Program Files/IBM/WebSphere Studio/Site Developer/v5.1/runtimes/base_v5/java/lib/

¤ª¤¤¤Ã¤Ã

¥Ý¡¼¥¿¥Ö¥ë¤Ë¥Ñ¥¹¤ò¼èÆÀ¤¹¤ë¡©(¤Þ¤À)

System.out.println(JavaDocumentSearcher.class.getResource("/")); <-»ØÄꤷ¤¿¥¯¥é¥¹¤Î¡¢¥í¡¼¥É¤µ¤ì¤¿¥Ñ¥¹
System.out.println(JavaDocumentSearcher.class.getResource("/../lib/")); <-»ØÄꤷ¤¿¥¯¥é¥¹¤Î¡¢¥í¡¼¥É¤µ¤ì¤¿¥Ñ¥¹¤«¤é¤ÎÁêÂХѥ¹(·èÄꤵ¤ì¤¿¥Ñ¥¹¤¬¥¯¥é¥¹¥Ñ¥¹¤¬Ä̤äƤ¿¤é¡£)

·ë¶É

URL url = getClass().getResource("/kino/log4j/log4j.xml");

¤Ê¤É¤·¤Æ¡¢classes¤Ëkino/log4j/log4j.xml¤òÇÛÃÖ¤·¤¿¡£(¥¯¥é¥¤¥¢¥ó¥È¥¢¥×¥ê¤Ê¤É¡¢¼«¤é¥¯¥é¥¹¥Ñ¥¹¤òÄ̤»¤ë´Ä¶­¤À¤Ã¤¿¤é¡¢lib/¤È¤«¤ËÃÖ¤¤¤Æ¤â¤è¤¤¤«¤â)

JDK¤Ç»ÈÍѤ·¤Æ¤¤¤ë¡¢XML¼ÂÁõ¤ÎVersion¤ÎÄ´¤ÙÊý¡£

System.out.println(org.apache.xerces.impl.Version.fVersion);
org.apache.xalan.Version.main(args);

try {
	DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
	DocumentBuilder builder = factory.newDocumentBuilder();
	Document document = builder.parse(xml);
	//			print(document);

	TransformerFactory tfactory = TransformerFactory.newInstance();
	Transformer transformer = tfactory.newTransformer(new StreamSource(xsl));

	System.out.println(builder);
	System.out.println(transformer);

JDK¤ÎJAXP¤Î¼ÂÁõ¤ÎÆþ¤ìÂØ¤¨ÊýË¡

C:\j2sdk1.4.0\jre\lib\endorsed ¤È¤¤¤¦¥Ç¥£¥ì¥¯¥È¥ê¤òºîÀ®¤·¡¢¤½¤ÎÃæ¤Ë¼¡¤Îjar¥Õ¥¡¥¤¥ë¤òÆþ¤ì¤ë¡£

  • ¥Ñ¡¼¥µ¼ÂÁõ
    • xmlParserAPIs.jar
    • xercesImpl.jar
  • xslt¼ÂÁõ
    • xalan.jar

URL

String url = "file:" + System.getProperty("user.dir") + System.getProperty("file.separator") + urlstr;
newUrl = new URL(url);

java¤Î¼Â¹Ô

>java -classpath ".;lib;classes;lib\log4j-1.2.8.jar;swt.jar" kino.swt.JavaDocSearchForm
>java -classpath ".;lib;classes;lib\log4j-1.2.8.jar;swt.jar;lib\kino_javadocsearch.jar" 
 kino.swt.JavaDocSearchForm
>java -classpath "¥¯¥é¥¹¥Ñ¥¹(¥»¥ß¥³¥í¥ó¶èÀÚ¤ê)" ¥¯¥é¥¹

¤³¤Î¥µ¥¤¥È¤è¤¤¤«¤â¡£

¥«¥ì¥ó¥È¥Ç¥£¥ì¥¯¥È¥ê¼èÆÀÊýË¡

SUN¤Î¤ªËÏÉÕ¤­¤È¤Î¤³¤È

File fileCurrent=new File(".");
System.out.println(fileCurrent.getAbsolutePath());

¥Ç¥£¥ì¥¯¥È¥êʸ»úÎó¤Î¤ß¼èÆÀ¤¹¤ëÊýË¡¤Ë¥¢¥ì¥ó¥¸

import java.io.*;

public class MyTest{
	public static void main(String[] args){
		File fileParentDirectory=new File(".").getAbsoluteFile().getParentFile();
		System.out.println(fileParentDirectory.getAbsolutePath());
	}
}

¥·¥¹¥Æ¥à¤Î¥×¥í¥Ñ¥Æ¥£¤ò¸«¤ëÊýË¡

<%
	try {
		Properties props = System.getProperties();
		Enumeration keys = props.propertyNames();
		for (int i = 1; keys.hasMoreElements(); i++) {
			String key = (String)keys.nextElement();
			String val = props.getProperty(key);
%>
	<tr>
		<td nowrap><font size=-1><%=i%></font></td>
		<td nowrap><font size=-1><%=key%></font></td>
		<td nowrap><font size=-1><%=val%></font></td>
	</tr>
<%
	}
	} catch (Exception ex) {
	}
%>

¸½ºß¤Î¥¢¥¯¥»¥¹:18615


*1 ¤Ç¤â¤³¤ì¡¢¸õÊ䤷¤«¤ï¤«¤ê¤Þ¤»¤ó¤Í

¥È¥Ã¥×   ÊÔ½¸ Åà·ë º¹Ê¬ ¥Ð¥Ã¥¯¥¢¥Ã¥× źÉÕ Ê£À½ ̾Á°Êѹ¹ ¥ê¥í¡¼¥É   ¿·µ¬ °ìÍ÷ ñ¸ì¸¡º÷ ºÇ½ª¹¹¿·   ¥Ø¥ë¥×   ºÇ½ª¹¹¿·¤ÎRSS
Last-modified: 2003-12-15 (·î) 22:02:37 (3077d)