10-16-2007 12:27 AM
10-16-2007 05:18 AM
10-18-2007 02:19 PM
10-18-2007 02:30 PM
Web Script Status 500 - Internal Error
Error during processing of the temple 'null'.
Script Status 500 - Internal Error
The Web Script /alfresco/wcservice/office/navigation has responded with a status of 500 - Internal Error.
500 Description: An error inside the HTTP server which prevented it from fulfilling the request.
Message: Error during processing of the template 'null'. Please contact your system administrator.
Exception: java.lang.NullPointerException
org.alfresco.repo.security.permissions.impl.model.PermissionModel.getExposedPermissionsImpl(PermissionModel.java:455)
org.alfresco.repo.security.permissions.impl.model.PermissionModel.getAllPermissions(PermissionModel.java:434)
org.alfresco.repo.security.permissions.impl.PermissionServiceImpl.hasPermission(PermissionServiceImpl.java:356)
org.alfresco.repo.security.permissions.impl.PermissionServiceImpl.hasPermission(PermissionServiceImpl.java:577)
org.alfresco.repo.security.permissions.impl.acegi.ACLEntryAfterInvocationProvider.decide(ACLEntryAfterInvocationProvider.java:577)
org.alfresco.repo.security.permissions.impl.acegi.ACLEntryAfterInvocationProvider.decide(ACLEntryAfterInvocationProvider.java:224)
net.sf.acegisecurity.afterinvocation.AfterInvocationProviderManager.decide(AfterInvocationProviderManager.java:107)
net.sf.acegisecurity.intercept.AbstractSecurityInterceptor.afterInvocation(AbstractSecurityInterceptor.java:329)
net.sf.acegisecurity.intercept.method.aopalliance.MethodSecurityInterceptor.invoke(MethodSecurityInterceptor.java:82)
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)
org.alfresco.repo.security.permissions.impl.ExceptionTranslatorMethodInterceptor.invoke(ExceptionTranslatorMethodInterceptor.java:49)
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)
org.alfresco.repo.audit.AuditComponentImpl.audit(AuditComponentImpl.java:241)
org.alfresco.repo.audit.AuditMethodInterceptor.invoke(AuditMethodInterceptor.java:69)
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)
org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:107)
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)
org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:210)
$Proxy15.selectNodes(Unknown Source)
org.alfresco.repo.template.BasePathResultsMap.getChildrenByXPath(BasePathResultsMap.java:86)
org.alfresco.repo.template.XPathResultsMap.get(XPathResultsMap.java:53)
freemarker.template.SimpleHash.get(SimpleHash.java:193)
freemarker.core.DynamicKeyName.dealWithStringKey(DynamicKeyName.java:136)
freemarker.core.DynamicKeyName._getAsTemplateModel(DynamicKeyName.java:94)
freemarker.core.Expression.getAsTemplateModel(Expression.java:89)
freemarker.core.Assignment.accept(Assignment.java:90)
freemarker.core.Environment.visit(Environment.java:196)
freemarker.core.MixedContent.accept(MixedContent.java:92)
freemarker.core.Environment.visit(Environment.java:196)
freemarker.core.Environment.process(Environment.java:176)
freemarker.template.Template.process(Template.java:232)
org.alfresco.repo.template.FreeMarkerProcessor.process(FreeMarkerProcessor.java:201)
org.alfresco.web.scripts.AbstractWebScript.renderTemplate(AbstractWebScript.java:396)
org.alfresco.web.scripts.DeclarativeWebScript.renderFormatTemplate(DeclarativeWebScript.java:264)
org.alfresco.web.scripts.DeclarativeWebScript.execute(DeclarativeWebScript.java:170)
org.alfresco.web.scripts.WebScriptRuntime.wrappedExecute(WebScriptRuntime.java:364)
org.alfresco.web.scripts.WebScriptRuntime$1.execute(WebScriptRuntime.java:330)
org.alfresco.repo.transaction.RetryingTransactionHelper.doInTransaction(RetryingTransactionHelper.java:230)
org.alfresco.repo.transaction.RetryingTransactionHelper.doInTransaction(RetryingTransactionHelper.java:160)
org.alfresco.web.scripts.WebScriptRuntime.transactionedExecute(WebScriptRuntime.java:341)
org.alfresco.web.scripts.WebScriptRuntime.authenticatedExecute(WebScriptRuntime.java:284)
org.alfresco.web.scripts.WebScriptRuntime.executeScript(WebScriptRuntime.java:150)
org.alfresco.web.scripts.WebScriptServlet.service(WebScriptServlet.java:106)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:210)
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:174)
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:151)
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:870)
org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:685)
java.lang.Thread.run(Thread.java:801)
Exception: org.alfresco.service.cmr.repository.TemplateException - Error during processing of the template 'null'. Please contact your system administrator.
org.alfresco.repo.template.FreeMarkerProcessor.process(FreeMarkerProcessor.java:205)
Server: Alfresco Community Network v2.2.0 (dev 595) schema 108
Time: 18-Oct-2007 20:24:06
Diagnostics: Inspect Web Script (org/alfresco/office/navigation.get)
ge its size
Web Script: org/alfresco/office/navigation.get
Alfresco Community Network v2.2.0 (dev 595)
Generated from /alfresco/wcservice/script/org/alfresco/office/navigation.get on 18-Oct-2007 20:28:16
Script Properties Id: org/alfresco/office/navigation.get
Short Name: Navigation (Office Add-In)
Description: Generate the Office Add-In Navigation page
Authentication: user
Transaction: required
Method: GET
URL Template: /office/navigation?p={path?}
Format Style: any
Default Format: html
Implementation: class org.alfresco.web.scripts.DeclarativeWebScript
Store: workspace://SpacesStore/app:company_home/app:dictionary/cm:extensionwebscripts
[No implementation files]
Store: workspace://SpacesStore/app:company_home/app:dictionary/cm:webscripts
[No implementation files]
Store: classpath:alfresco/templates/webscripts
File: org/alfresco/office/navigation.get.html.ftl
<#assign doc_actions="${url.serviceContext}/office/docActions">
<#if args.e?exists><#assign extn=args.e><#else><#assign extn="doc"></#if><#assign extnx=extn+"x">
<#if args.n?exists><#assign nav=args.n><#else><#assign nav=""></#if>
<#assign chLen=companyhome.name?length>
<#if node.isDocument>
<#assign thisSpace = node.parent>
<#else>
<#assign thisSpace = node>
</#if>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
<title>Browse Spaces and Documents</title>
<link rel="stylesheet" type="text/css" href="${url.context}/css/office.css" />
<!–[if IE 6]>
<link rel="stylesheet" type="text/css" href="${url.context}/css/office_ie6.css" />
<![endif]–>
<script type="text/javascript" src="${url.context}/scripts/ajax/mootools.v1.11.js"></script>
<script type="text/javascript" src="${url.context}/scripts/office/office_addin.js"></script>
<script type="text/javascript" src="${url.context}/scripts/office/navigation.js"></script>
</head>
<body>
<div id="overlayPanel"></div>
<div id="tabBar">
<ul>
<li><a title="My Alfresco" href="${url.serviceContext}/office/myAlfresco?p=${path?url}&e=${extn}&n=${nav}"><span><img src="${url.context}/images/office/my_alfresco.gif" alt="My Alfresco" /></span></a></li>
<li id="current"><a title="Browse Spaces and Documents" href="${url.serviceContext}/office/navigation?p=${path?url}&e=${extn}&n=${nav}"><span><img src="${url.context}/images/office/navigator.gif" alt="Browse Spaces and Documents" /></span></a></li>
<li><a title="Search Alfresco" href="${url.serviceContext}/office/search?p=${path?url}&e=${extn}&n=${nav}"><span><img src="${url.context}/images/office/search.gif" alt="Search Alfresco" /></span></a></li>
<li><a title="View Details" href="${url.serviceContext}/office/documentDetails?p=${path?url}&e=${extn}&n=${nav}"><span><img src="${url.context}/images/office/document_details.gif" alt="View Details" /></span></a></li>
<li><a title="My Tasks" href="${url.serviceContext}/office/myTasks?p=${path?url}&e=${extn}&n=${nav}"><span><img src="${url.context}/images/office/my_tasks.gif" alt="My Tasks" /></span></a></li>
</ul>
</div>
<div class="header">Current Space</div>
<div id="currentSpaceInfo">
<span style="float: left;">
<span style="float: left;">
<img src="${url.context}${thisSpace.icon16}" alt="${thisSpace.name}" />
</span>
<span style="float: left; padding-left: 6px;">
<span class="bold">${thisSpace.name}</span><br />
<#if thisSpace.properties.description?exists>
${thisSpace.properties.description}
</#if>
</span>
</span>
<#if thisSpace=companyhome>
<#else>
<span style="float: right;">
<a title="Up to Parent Space" href="${url.serviceContext}/office/navigation?p=${path?url}&n=${thisSpace.parent.id}">
<img src="${url.context}/images/office/go_up.gif" alt="Up to Parent Space" />
<span>Up</span>
</a>
</span>
</#if>
</div>
<div class="header">Spaces in ${thisSpace.name}<span class="headerExtra"><span class="toggle"> </span></span></div>
<div id="spaceList" class="containerMedium togglePanel">
<div id="createSpaceContainer">
<div id="createSpace" onclick="OfficeNavigation.showCreateSpace();">
<img src="${url.context}/images/office/create_space.gif" alt="Create new space" />
<span style="vertical-align: top;">Create New <#if args.cc?exists>Collaboration </#if>Space…</span>
</div>
<div id="createSpacePanel">
<div id="createSpaceParameters">
<div class="spaceParam">Name:</div>
<div class="spaceValue">
<input id="spaceName" type="text" value="" />
</div>
<div class="spaceParam">Title:</div>
<div class="spaceValue">
<input id="spacetitle" type="text" value="" />
</div>
<div class="spaceParam">Description:</div>
<div class="spaceValue">
<input id="spaceDescription" type="text" value="" />
</div>
<#assign xpath="app:dictionary/app:space_templates/*">
<#assign templates = companyhome.childrenByXPath[xpath]>
<#if (templates?size > 0)>
<div class="spaceParam">Template:</div>
<div class="spaceValue">
<select id="spaceTemplate" style="width: 172px;">
<option selected="selected" value="">(None)</option>
<#list templates as template>
<option value="${template.id}">${template.name}</option>
</#list>
</select>
</div>
</#if>
<div class="spaceParam"> </div>
<div class="spaceValue">
<a class="spaceAction" href="#" onclick="OfficeNavigation.submitCreateSpace('${url.serviceContext}/office/docActions', '${thisSpace.id}');">
Submit
</a>
<a class="spaceAction" href="#" onclick="OfficeNavigation.hideCreateSpace();">
Cancel
</a>
</div>
</div>
</div>
</div>
<#assign spacesFound = 0>
<#list thisSpace.children?sort_by('name') as child>
<#if child.isContainer>
<#assign spacesFound = spacesFound + 1>
<div class="spaceItem ${(spacesFound % 2 = 0)?string("even", "odd")}">
<span style="float: left; width: 36px;">
<a href="${url.serviceContext}/office/navigation?p=${path?url}&n=${child.id}"><img src="${url.context}${child.icon32}" alt="Open ${child.name}" /></a>
</span>
<span>
<a href="${url.serviceContext}/office/navigation?p=${path?url}&n=${child.id}" title="Open ${child.name}">
<span class="bold">${child.name}</span>
</a>
<#if child.properties.description?exists>
<br />${child.properties.description}
</#if>
</span>
</div>
</#if>
</#list>
<#if spacesFound = 0>
<div class="noItems">(No subspaces)</div>
</#if>
</div>
<div class="header">Documents in ${thisSpace.name}<span class="headerExtra"><span class="toggle"> </span></span></div>
<div id="documentList" class="containerMedium togglePanel">
<#assign documentsFound = 0>
<#list thisSpace.children?sort_by('name') as child>
<#if child.isDocument>
<#assign documentsFound = documentsFound + 1>
<#assign relativePath = (child.displayPath?substring(chLen+1) + '/' + child.name)?url?replace('%2F', '/')?replace('\'', '\\\'') />
<div class="documentItem ${(documentsFound % 2 = 0)?string("even", "odd")}">
<span class="documentItemIcon">
<#if child.name?ends_with(extn) || child.name?ends_with(extnx)>
<a href="#" onclick="window.external.openDocument('${relativePath}')"><img src="${url.context}${child.icon32}" alt="Open ${child.name}" /></a>
<#else>
<a href="${url.context}${child.url}?ticket=${session.ticket}" rel="_blank"><img src="${url.context}${child.icon32}" alt="Open ${child.name}" /></a>
</#if>
</span>
<span class="documentItemDetails">
<#if child.name?ends_with(extn) || child.name?ends_with(extnx)>
<a href="#" onclick="window.external.openDocument('${relativePath}')"><span class="bold">${child.name}</span></a>
<#else>
<a href="${url.context}${child.url}?ticket=${session.ticket}" rel="_blank"><span class="bold">${child.name}</span></a>
</#if>
<br />
<#if child.properties.description?exists>
<#if (child.properties.description?length > 0)>
${child.properties.description}<br />
</#if>
</#if>
Modified: ${child.properties.modified?datetime}, Size: ${(child.size / 1024)?int}Kb<br />
<#if child.isLocked >
<img src="${url.context}/images/office/lock.gif" style="padding:3px 6px 2px 0px;" alt="Locked" />
<#elseif hasAspect(child, "cm:workingcopy") == 1>
<a href="#" onclick="OfficeAddin.runAction('${doc_actions}','checkin','${child.id}', '');"><img src="${url.context}/images/office/checkin.gif" style="padding:3px 6px 2px 0px;" alt="Check In" title="Check In" /></a>
<#else>
<a href="#" onclick="OfficeAddin.runAction('${doc_actions}','checkout','${child.id}', '');"><img src="${url.context}/images/office/checkout.gif" style="padding:3px 6px 2px 0px;" alt="Check Out" title="Check Out" /></a>
</#if>
<a href="${url.serviceContext}/office/myTasks?p=${path?url}&w=new&wd=${child.id}"><img src="${url.context}/images/office/new_workflow.gif" style="padding:3px 6px 2px 0px;" alt="Create Workflow…" title="Create Workflow…" /></a>
<a href="#" onclick="window.external.insertDocument('${relativePath}')"><img src="${url.context}/images/office/insert_document.gif" style="padding:3px 6px 2px 0px;" alt="Insert File into Current Document" title="Insert File into Current Document" /></a>
<#if !child.name?ends_with(".pdf")>
<a href="#" onclick="OfficeAddin.runAction('${doc_actions}','makepdf','${child.id}', '');"><img src="${url.context}/images/office/makepdf.gif" style="padding:3px 6px 2px 0px;" alt="Make PDF…" title="Make PDF" /></a>
</#if>
<#if !child.isLocked>
<a href="#" onclick="OfficeAddin.runAction('${doc_actions}','delete','${child.id}', 'Are you sure you want to delete this document?');"><img src="${url.context}/images/office/delete.gif" style="padding:3px 6px 2px 0px;" alt="Delete…" title="Delete" /></a>
</#if>
</span>
</div>
</#if>
</#list>
<#if documentsFound = 0>
<div class="noItems">(No documents)</div>
</#if>
</div>
<div class="header">Actions</div>
<#assign currentPath = thisSpace.displayPath + '/' + thisSpace.name />
<#assign currentPath = currentPath?substring(chLen+1)?url?replace('%2F', '/')?replace('\'', '\\\'') />
<div id="documentActionsNavigation">
<div id="saveDetailsPanel">
Document filename:<br />
<input class="saveDetailsItem" type="text" id="saveFilename" style="height: 18px; width: 168px;" />
<a class="spaceAction" href="#" onclick="OfficeNavigation.saveOK(this);">OK</a>
<a class="spaceAction" href="#" onclick="OfficeNavigation.saveCancel();">Cancel</a>
</div>
<div id="nonStatusText">
<ul>
<#if !node.isDocument>
<li>
<a href="#" onclick="OfficeNavigation.saveToAlfresco('${currentPath}')">
<img src="${url.context}/images/office/save_to_alfresco.gif" alt="Save to Alfresco" />
Save to Alfresco
</a>
<br />Save the document to the current Space.
</li>
</#if>
<#if args.search?exists>
<li>
<a href="${url.serviceContext}/office/search?p=${path?url}&e=$(extn}&searchagain=${args.search?url}&maxresults=${args.maxresults}">
<img src="${url.context}/images/office/search_again.gif" alt="Back to results" />
Back to search results
</a>
<br />Return to the search tab.
</li>
</#if>
</ul>
</div>
<div id="statusText"></div>
</div>
</body>
</html>
File: org/alfresco/office/navigation.get.desc.xml
<webscript>
<shortname>Navigation (Office Add-In)</shortname>
<description>Generate the Office Add-In Navigation page</description>
<url>/office/navigation?p={path?}</url>
<authentication>user</authentication>
<transaction>required</transaction>
</webscript>
File: org/alfresco/office/navigation.get.js
if ((args.n) && (args.n != ""))
{
model.node = search.findNode("workspace://SpacesStore/" + args.n);
}
else if ((args.p) && (args.p != ""))
{
var path = args.p;
if (path == "/" + companyhome.name)
{
model.node = companyhome;
}
else
{
var node = companyhome.childByNamePath(path.substring(companyhome.name.length));
if (node != null)
{
model.node = node;
}
else
{
model.node = userhome;
}
}
}
else
{
model.node = userhome;
}
model.path = args.p;
10-30-2007 03:59 AM
10-31-2007 09:21 AM
<#assign xpath="app:dictionary/app:space_templates/*">
<#assign templates = companyhome.childrenByXPath[xpath]>
11-07-2007 11:50 PM
Have you locked-down access to the Data Dictionary and/or Space Templates spaces?
11-07-2007 11:57 PM
Tags
Find what you came for
We want to make your experience in Hyland Connect as valuable as possible, so we put together some helpful links.