我正在尝试通过 JCR 存储库中的 sardine 添加 zip 文件。 已经构建了一个小型测试用例。
public void getFileTest() {
String baseUrl = "http://localhost:8380/jackrabbit/repository";
Sardine sardine = SardineFactory.begin("guest", "guest");
ContentLengthInputStream is = null;
DefaultHttpClient httpClient = new DefaultHttpClient();
HttpParams httpParams = httpClient.getParams();
HttpConnectionParams.setConnectionTimeout(httpParams, this.connectTimeout);
HttpConnectionParams.setSoTimeout(httpParams, this.socketTimeout);
HttpConnectionParams.setStaleCheckingEnabled(httpParams, true);
SardineImpl sar = new SardineImpl(httpClient);
sar.setCredentials("guest", "guest");
try {
java.io.File file = new java.io.File("D:\\Software\\vfabric-tc-server-developer-2.7.0.RELEASE\\lcs_campus\\webapps\\learningPlatform\\static\\dummyInlineAuthoringContent.zip");
FileInputStream fis=new FileInputStream(file);
MimetypesFileTypeMap mimeType = new MimetypesFileTypeMap();
byte[] byteArray=IOUtils.toByteArray(fis);
sar.put(baseUrl + "/content/a/d/admin-admin-admin--admin-admin-admin/Library/rejesh1/dummyInline233.txt",byteArray);
fis.close();
} catch (IOException e) {
e.printStackTrace();
}
}
问题是插入的 zip 文件中的文件结构与源文件的文件结构相同,但缺少所有文件(zip 内)的内容。 为这个问题而疯狂!..请帮忙!!!!!!
最佳答案
默认情况下,Jackrabbit 会尝试处理上传的 zip 文件,这可能会导致文件大于几 kB 时出现问题。您可以在 Jackrabbits WEB-INF/config.xml 中更改此设置,只需注释掉那里的 zip-manager 即可。
您可以在这里找到更详细的信息:http://juergen-baier.com/2014/04/19/uploading-zip-files-to-jackrabbit-via-webdav/
关于java - 通过 sardine-webdav -jcr 添加 zip 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21987352/