相关疑难解决方法(0)

如何从两个绝对路径(或URL)构建Java中的相对路径?

给出两条绝对路径,例如

/var/data/stuff/xyz.dat
/var/data
Run Code Online (Sandbox Code Playgroud)

如何创建使用第二条路径作为基础的相对路径?在上面的例子中,结果应该是:./stuff/xyz.dat

java url file path

268
推荐指数
11
解决办法
19万
查看次数

如何可靠地从类路径资源(在jar中)加载XMLCatalog?

下面是一些代码片段,表明我现在正在尝试什么,但它不可靠.Princiaply我认为因为你只能注册一次协议处理程序,偶尔其他库可能会先这样做.

import org.apache.xerces.util.XMLCatalogResolver;



public static synchronized XMLCatalogResolver getResolver() {
        String c[] = {"classpath:xml-catalog.xml"};
        if (cr==null) {

            log.debug("Registering new protcol handler for classpath");
            ConfigurableStreamHandlerFactory configurableStreamHandlerFactory = new ConfigurableStreamHandlerFactory("classpath", new org.fao.oek.protocols.classpath.Handler(XsdUtils.class.getClassLoader()));
            configurableStreamHandlerFactory.addHandler("http", new sun.net.www.protocol.http.Handler());


            URL.setURLStreamHandlerFactory(configurableStreamHandlerFactory);

            log.debug("Creating new catalog resolver");

        cr = new XMLCatalogResolver(c);

        }
        return cr;
    }
Run Code Online (Sandbox Code Playgroud)

xml-catalog.xml包含:

<catalog xmlns="urn:oasis:names:tc:entity:xmlns:xml:catalog">
<group  prefer="public"  xml:base="classpath:org/me/myapp/xsd/" >  
  <uri name="http://www.w3.org/XML/1998/namespace" uri="xml.xsd"/>
  <uri name="http://www.w3.org/1999/xlink" uri="xlink.xsd" />
  <uri name="http://www.w3.org/2001/XMLSchema" uri="XMLSchema.xsd" />
  <uri name="http://purl.org/dc/elements/1.1/" uri="dc.xsd" />
  <uri name="http://www.loc.gov/mods/v3"  uri="mods-3.3.xsd" />
 </group>
</catalog>
Run Code Online (Sandbox Code Playgroud)

显然 - xsd文件存在于类路径中的正确位置.

java xml xsd

5
推荐指数
1
解决办法
3560
查看次数

加载密钥库文件,找不到别名

我正在尝试使用KeyStore从密钥库中获取信息.我使用此命令生成了密钥库:

keytool -genkey -alias server -keyalg RSA -keystore server.keystore -validity 365采取这个页面.

检查其信息keytool -list -v -keystore server.keystore我得到以下内容:

别名:server
创建日期:2014年4月30日
条目类型:PrivateKeyEntry
证书链长:1
证书[1] :(
其他信息在这里)

使用此命令:keytool -list -keystore server.keystore -alias server我得到这个:

服务器,2014年4月30日,PrivateKeyEntry,证书指纹(SHA1):28:65:5B:0C:B3:3C:C9:AA:F1:7C:CE:91:23:77:DD:0D:F8:54 :70:B9

现在,我的java代码:

keyStore = KeyStore.getInstance(KeyStore.getDefaultType());
keyStore.load(getClass().getResourceAsStream(KEYSTORE_FILE_PATH), "myPass".toCharArray());
keyStore.getCertificate("server").getPublicKey().getEncoded(); //here I get a null pointer exception - keystore.getCertificate("server") returns null. 
Run Code Online (Sandbox Code Playgroud)

执行keyStore.aliases()返回EmptyEnumeration.

该应用程序使用maven,java ee 7,我已经将密钥库文件复制到我的应用程序的resources文件夹中.KEYSTORE_FILE_PATH的值为"/server.keystore".

谢谢.

java ssl keystore java-ee wildfly-8

4
推荐指数
1
解决办法
4087
查看次数

jar 文件内的文件夹路径

我有 jar 文件langdetect.jar。它具有如图所示的层次结构

显示jar内的项目结构

LanguageDetection包里有一个课程com/langdetect。我需要profiles.sm在执行 jar 文件时从上面的类访问文件夹的路径。

提前致谢。

java jar

3
推荐指数
1
解决办法
4702
查看次数

如何在java中指定getResourceAsStream()方法的路径

我知道这个问题已经被问过好几次了,但我仍然无法通过这些解决方案来解决它。

我有一个 Maven 项目。一个 Config.java 文件位于consumer/src/main/java. 以下是内容:

import java.util.Properties;

public class Config {
    Properties configFile;
    public Config() {
        configFile = new Properties();
        try {
            configFile.load(this.getClass().getClassLoader().
                    getResourceAsStream("property_table.config.txt"));
        } catch(Exception e) {
            e.printStackTrace();
        }
    }

    public String getProperty(String key) {
        String value = this.configFile.getProperty(key);
        return value;
    }
    public static void main(String[] args) {
        Config config = new Config();
        System.out.println("URL: " + config.getProperty("URL"));
        System.out.println("PASSWORD: " + config.getProperty("PASSWORD"));
    }
}
Run Code Online (Sandbox Code Playgroud)

我不断得到nullpointer exception。我知道那是因为它找不到文件property_table.config.txt

起初,我将property_table_config.txt文件放在与consumer/src/main/java/Config.java 文件相同的文件夹中()。并尝试使用 …

java inputstream

2
推荐指数
1
解决办法
8106
查看次数

标签 统计

java ×5

file ×1

inputstream ×1

jar ×1

java-ee ×1

keystore ×1

path ×1

ssl ×1

url ×1

wildfly-8 ×1

xml ×1

xsd ×1