我正在从Alfresco的php中读取一个文件,然后将其输出到浏览器.唯一的问题是mimetype或文件的扩展名.这是我正在使用的代码:
<?php
ob_start();
//require_once("libs/FirePHPCore/fb.php");
require_once("libs/AlfrescoConnect.php");
$nomeFile = rawurldecode($_GET['nomeFile']);
$urlDownload = $_GET['urlDownload'];
$fileDownloadUrl = AlfrescoConnect::$serverPath. $urlDownload . "&attach=true&alf_ticket=".AlfrescoConnect::getTiket();
fb($fileDownloadUrl);
$cnt = file_get_contents($fileDownloadUrl);
header("Content-type: Application/octet-stream");
header('Cache-Control: must-revalidate');
header('Content-disposition: attachment; filename=' .$nomeFile);
echo($cnt);
exit();
echo("Impossibile trovare il file");
Run Code Online (Sandbox Code Playgroud)
我从get becausa收到文件的名称,我不知道如何从露天获取名称,但我必须以某种方式猜测mimetype.如果我在第一个字符中"回显"$ cnt,则会提到它是一个PDF(例如在屏幕上我看到"%PDF-1.3%âÏÓ20 obj <</Length 3 0 R/Filter/CCITTFaxDecode/DecodeParms <</K 0/Columns 2480/Rows 3508 >>/Type/XObject/Subtype/Image/Width 2480/Height 3508/BitsPerComponent 1/ColorSpace/DeviceGray >> stream"所以必须有办法获取mime_tipe从它有一个功能.
任何帮助都是值得赞赏的!
编辑.如果有人是intereste这里是一个类,你可以用来从mime类型获得扩展. http://www.ustrem.org/en/articles/mime-type-by-extension-en/
我有一个想要实施文档管理系统的公司实习面试,他们正在考虑首先开源解决方案,他们的首选是Alfresco,但决定仍然不是最终的,我的工作部分将是调查是Alfresco是最好的解决方案.
我从项目描述中看到的是,他们将使用MySQL数据库实现Alfresco,而不是仅将DBMS用于文档元数据和索引,但他们实际上想要将文档存储在其中.根据公司资料,文档类型主要是PDF和.doc,而不是图像.
我已经研究了一下,我已经阅读了有关将文件存储到数据库中的所有主题,而不是复制问题.因此,根据我的理解,存储BLOBS通常是不可推荐的,并且根据公司的概况及其存档的法律义务,我认为他们将需要存储更多的文档.
我想尽可能多地为面试做好准备,这就是为什么我希望你对这些问题的意见:
决定将文档存储到DBMS中的原因是什么(特别是考虑到您正在安装Alfresco,它将文件存储在FS中)?
您是否有任何将文档存储到MySQL数据库的经验?
非常感谢所有的帮助,我对面试感到非常兴奋,真的很想实习,所以这是我以前真正想要了解的事情之一!
谢谢!!!!
现在我开始与露天合作.但我不清楚什么是类型和什么方面?请详细举例说明.
在Alfresco Share中,当您单击工具栏中的"存储库"图标时,您将被带到:
/共享/页/库
我想更改此链接以将用户带到其主文件夹,例如:
/share/page/repository#filter=path|/User%2520Homes/g/gi/gillespie/patrick.j.gillespie
我认为这将是一个简单的改变,但是,我正在试图弄清楚如何改变链接.有谁知道我编辑什么来改变这个链接?
更新:所以我可以通过share-config-custom.xml文件更新链接,更改此行:
<item type="link" id="repository">/repository</item>
Run Code Online (Sandbox Code Playgroud)
但我不知道如何获取文件夹路径信息.有没有人有任何想法?
我们正在考虑将Alfresco Enterprise 3.4.1降级为Alfresco社区.
我已经习惯了Alfresco Enterprise,但我没有社区版的经验.
我们正在使用EMC,Alfresco Explorer和我们自己的基于Web Services API和Foundation API的开发.
我担心数据库迁移.我可以简单地配置Alfresco Community 3.4.e以将我们的Oracle数据库用于Alfresco Enterprise 3.4.1吗?架构是否与社区和企业版本兼容?我应该使用哪个版本的Alfresco社区?3.4.e?分布之间的降级路径是什么?这两个版本的版本之间是否存在任何对应关系?
任何降级经验,指南或任何相关信息都将受到欢迎.
我试图在对应于Alfresco模板页面的javascript文件中使用logger.log("Hello").
我已设置以下内容: - 在custom-log4j.properties中(覆盖log4j.properties)
log4j.appender.File=org.apache.log4j.DailyRollingFileAppender
log4j.appender.File.File=alfresco.log
log4j.appender.File.Append=true
log4j.appender.File.DatePattern='.'yyyy-MM-dd
log4j.appender.File.layout=org.apache.log4j.PatternLayout
log4j.appender.File.layout.ConversionPattern=%d{ABSOLUTE} %-5p [%c] %m%n
log4j.logger.org.alfresco.repo.web.scripts=warn
log4j.logger.org.alfresco.repo.web.scripts.BaseWebScriptTest=info
log4j.logger.org.alfresco.repo.web.scripts.AlfrescoRhinoScriptDebugger=off
log4j.logger.org.alfresco.repo.jscript=debug
log4j.logger.org.alfresco.repo.jscript.ScriptLogger=debug
log4j.logger.org.alfresco.repo.cmis.rest.CMISTest=info
Run Code Online (Sandbox Code Playgroud)
但是当我在js文件中使用logger.log时,我得到的logger没有定义.
解决方案是在custom-slingshot-application-context.xml中设置以下内容
<bean id="webframework.rendition.processor.webtemplate" class="org.springframework.extensions.webscripts.WebTemplateProcessor">
<property name="templateProcessorRegistry" ref="webframework.templates.registry.templateprocessor" />
<property name="scriptProcessorRegistry" ref="webframework.templates.registry.scriptprocessor" />
<property name="processorModelHelper" ref="processor.model.helper"></property>
<property name="webFrameworkConfigElement" ref="webframework.config.element"></property>
<property name="scriptObjects">
<map>
<entry key="remote" value-ref="webframework.webscripts.scriptremote" />
<entry key="stringUtils">
<bean class="org.springframework.extensions.webscripts.ScriptableUtils"/>
</entry>
<entry key="logger">
<bean class="org.springframework.extensions.webscripts.ScriptLogger"/>
</entry>
</map>
</property>
</bean>
Run Code Online (Sandbox Code Playgroud)
现在使用logger.log不会给出任何错误,但似乎它没有写入位于Tomcat/bin中的alfresco.log
有人有线索吗?
我使用alfresco 4.2f社区版,在官方文档中我不了解JavaBehaviour NotificationFrequency有什么区别:
NotificationFrequency.EVERY_EVENT
NotificationFrequency.FIRST_EVENT
NotificationFrequency.TRANSACTION_COMMIT
Run Code Online (Sandbox Code Playgroud)
特别是在第一和第三之间.
提前致谢.
我想在文档属性页面上使用单选按钮.添加我在下面的代码使用的复选框.
<control template="/org/alfresco/components/form/controls/checkbox.ftl">
Run Code Online (Sandbox Code Playgroud)
在上面的情况下,checkbox.ftl由alfresco提供.但是没有任何RadioButton.ftl可用.
那么如何在属性页面上使用单选按钮?
如果有人做到了这一点,那么请帮助我.
提前致谢.
目前我有一个使用 fork/join 机制来创建并行流的子流程。以免假设有两个流:A, B。每个流都将复杂对象CONTEXT作为输入变量。此外,每个流程都会进行一些计算并更新内部的CONTEXT。作为输出,每个流都返回更新的CONTEXT。这里的问题是在加入点,CONTEXT 的最后一个结果覆盖了前一个。让我们假设流程A填充首先以结果CONTEXT_1完成,流程B将返回CONTEXT_2。所以最终结果将是CONTEXT_2并且流A 的所有更改都将丢失。
更新: 根据我的观察,从 SuperProcess 到 SubProcess 的传递变量 (CONTEXT) 被复制 (CONTEXT'),并且在 subProcess 完成后,传递变量 (CONTEXT') 的新值将取代原始 (CONTEXT)。
在下面的示例中,我的意思是所有传递的变量都具有相同的名称。
例子:
SubProcess P2 (Variable: CONTEXT' ) 创建两个并行流(Tasks)A , B(变量通过副本传递);
一个任务(变量:CONTEXT_1)更新变量的值,完成执行并返回变量;
3.1. CONTEXT_1代替了变量CONTEXT',因此P2只能看到这个新值,因为该变量的名称相同;
同时B任务(变量: …
我正在研究用户需要在文档上进行数字签名的项目。我检查了google,并了解了sinadura,这是一个桌面应用程序,但是我需要将其调用到我的Web应用程序中。
我在Linux服务器(https://www.alfresco.com/thank-you/thank-you-downloading-alfresco-community-edition)上安装了露天社区版,并按照以下GitHub链接中的说明进行操作。
https://github.com/zylklab/alfresco-sinadura
我已经按照上述说明成功实施了。但是Alfresco是一个大项目,并且还具有其他一些功能。但是我不需要,我只需要在我自己的Web应用程序中实现数字签名部分即可,类似于alfresco
如何在我现有的项目中实施数字签名部分?任何人都可以提出建议
java digital-certificate alfresco digital-signature alfresco-share
alfresco ×10
java ×2
activiti ×1
blobstorage ×1
bpmn ×1
freemarker ×1
javascript ×1
log4j ×1
mime-types ×1
mysql ×1
php ×1
storing-data ×1