Java代理导入图像资源

时间:2015-04-01 09:56:29

标签: java lotus-notes lotus-domino

我使用Java代理来扩展上传的图像,然后将其放入本地数据库映像资源中,以允许开发人员在其表单中使用该资源(我的数据库将是开发人员的图像管理器)。 / p>

基本上,它适用于不在View或Designer中的webbrowser buit。 当我使用DXLImporter类导入图像资源时,Designer会告诉我图像大小为0x0像素。

但它不是!当我查看带有图像的图像时,我可以看到预览。 奇怪的是:当我导出(代理) - 导入的图像,删除图像资源,然后导入它,它的工作原理。

导入图像资源的代码:

//Prepare the DXL import
            DxlImporter dxlImport = session.createDxlImporter(); 
            dxlImport.setAclImportOption(DxlImporter.DXLIMPORTOPTION_UPDATE_ELSE_CREATE);
            dxlImport.setDesignImportOption(DxlImporter.DXLIMPORTOPTION_REPLACE_ELSE_CREATE);

            //Init the manager - sets the DXL
            DxlManager dxlManager = new DxlManager(buffer, strName, strAlias, extension, session.getServerName() + "!!" + db.getFilePath(), db.getReplicaID());

            //Actual import the DXL
            dxlImport.importDxl(dxlManager.BuildDxlFromTemplate(session), db);

BuildDxlFromTemplate从模板创建DXL布局,只需替换所需的字段(名称,别名,jpeg,大小,mimetype)

如果我将代理导入的资源与手动重要资源进行比较,唯一的区别是缺少签名字段。 手动标志虽然没有帮助。

这是经过修改的DXL:

<?xml version='1.0'?>
<!DOCTYPE imageresource SYSTEM 'xmlschemas/domino_8_5_3.dtd'>
<imageresource name='24-7-32.png' alias='static/24-7-32.png' xmlns='http://www.lotus.com/dxl' version='8.5'
 maintenanceversion='3.6' replicaid='[REPLICATIONID]' publicaccess='false'
 designerversion='8.5.3'>
<jpeg
>iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAACRUlEQVR42u1XzUsbURD3A6wgqGD1ErEHD4oQSQ+iRy39D4Te7bWgIigecxKEgif1DygoBLyLiCePAb0EEkJICWkSQr42u/naZDf9DezC8Ny0m83GXDIQQmbevPnNm9/MexkZGcpQHEgwGJypVCrXrVarqOt6m0TTNLlWq93kcjlP3wJLkrSJoEq1Wj2JxWJLZvBIJOKB7gg2uW2ILMvfXA2uKMqt3+8f4zoEvULmda5D7FFVVYMEAoAKrgQPh8MrVvpoNPoBmf6wsuXz+TUCgVPSB8aVeDw+afCjMTAQREoCgXJdDAwEuuMXgeh5I8qizaRUKn0R7OeGaVf0NU7h2FYgsLdkBuF6sPsVrbiRSqU+ivZQKDTBsL0BAN9HW1zAwheeZSeWg9waB4DNqxhOZ50AJBKJZVtlaAuCjRVxTTab/Uy2crl8Sr8Bch/rNOa/22nvrgGITsVi0Ue6er3+QL8DgcC4Ud8tfK0aoPdpRjBuHEBXcwSADxJkum0E+8nWL1iBxvBaNwDvoKy/rZL5LwBkednN6bhSAgS9NzcHqb5zG2q+J35Ef9Kh7z+JeioVdYKd8TlrAmg2m0m3hhHdoODFtK3FKLtqgshkMlNuAEAyku3FuMkWOQ97DY629dGg6soJ9Xpis6BJ97xTABjZXx05IrDKGc+fW3igHNKDI5lMzv1rD7ycvD0dnwgCXfJMY5frAERKp9PzfbtOxfvBSgDiT1/v9EKh4DUfoVaC3r9+l8cF1bzRaNyhDDrLPjv8szIUp/IXl04kE/VVVrcAAAAASUVORK5CYII=</jpeg>
<item name='$FileSize' sign='true'><number>638</number></item>
<item name='$MimeType' sign='true'><text>image/png</text></item>
<item name='$FileModDT' sign='true'><datetime dst='true'>20150401T100408,08+02</datetime></item></imageresource>

我使用带有8.5.3服务器的9.0.1 PF2客户端/设计器(是的,那太可怕了)。

帮助表示赞赏:)

1 个答案:

答案 0 :(得分:0)

好的,经过一周的尝试并失去了所有的希望,事实证明客户端9.0.1或Server 8.5.3无法进行正确的.png导入。

导入jpeg,jpg和gif就像魅力一样。 然而,确实有麻烦。

这个问题众所周知,修复工作“正在进行中”。