2016-04-27 12 views
0

Ich habe ein seltsames Problem mit Alfresco, dass, wenn ich auf meine MY_HOSTNAME:8080/share URL zugreifen, es automatisch umleitet auf eine lange URL anhängende aktuelle: MY_HOSTNAME:8080/sharehttp://MY_IP:8080/share/page/site/documents/documentlibrary, die nicht zugegriffen werden kann. Wenn ich mich als andere Benutzer anmelde, ist das in Ordnung. Wie kann dieses Problem behoben werden?alfresco/share leitet zu einer langen Site-URL um?

Unten ist meine tomcat/webapps/share/site-index.jsp Datei, die ich nicht ändern wollte.

<%@ page import="org.alfresco.web.site.*" %> 
<%@ page import="org.springframework.extensions.surf.*" %> 
<%@ page import="org.springframework.extensions.surf.site.*" %> 
<%@ page import="org.springframework.extensions.surf.util.*" %> 
<%@ page import="java.util.*" %> 
<% 
    // retrieve user name from the session 
    String userid = (String)session.getAttribute(SlingshotUserFactory.SESSION_ATTRIBUTE_KEY_USER_ID); 

    // test user dashboard page exists? 
    RequestContext context = (RequestContext)request.getAttribute(RequestContext.ATTR_REQUEST_CONTEXT); 
    if (!context.getObjectService().hasPage("user/" + userid + "/dashboard")) 
    { 
     // no user dashboard page found! create initial dashboard for this user... 
     Map<String, String> tokens = new HashMap<String, String>(); 
     tokens.put("userid", userid); 
     FrameworkUtil.getServiceRegistry().getPresetsManager().constructPreset("user-dashboard", tokens); 
    } 

    // redirect to site or user dashboard as appropriate 
    String siteName = request.getParameter("site"); 
    if (siteName == null || siteName.length() == 0) 
    { 
     // Get and forward to user's home page 
     SlingshotUserFactory slingshotUserFactory = 
       (SlingshotUserFactory) FrameworkUtil.getServiceRegistry().getUserFactory(); 
     String userHomePage = slingshotUserFactory.getUserHomePage(context, userid); 
     response.sendRedirect(request.getContextPath() + userHomePage); 
    } 
    else 
    { 
     // forward to site specific dashboard page 
     response.sendRedirect(request.getContextPath() + "/page/site/" + URLEncoder.encode(siteName) + "/dashboard"); 
    } 
%> 

fand ich einige Dateien, die innerhalb alf_data/contentstore/DATE_TIME_DIRS/ die "org.alfresco.share.user.homePage" enthält, die auf die beigefügte lange URL verweist, die im Zusammenhang scheint. Ich weiß nicht, wie diese erzeugt werden.

+0

Gibt es Anpassungen in Ihrer Alfresco? Ich meine Verhalten, die nach Authentifizierung auf Dokumentbibliothek umleiten (wie dieser Thread https://forums.alfresco.com/forum/developer-discussions/alfresco-share-development/redirect-site-member-site-after-login)? Können Sie den Code bereitstellen? – Akah

+1

In welcher Version von Alfresco sind Sie? Außerdem - welche Benutzer-ID verwenden Sie, und was noch wichtiger ist, es hat alle Zeichen, die nicht alphanumerisch sind. Ich erinnere mich, dass wir ein Problem mit Login-Weiterleitungen für bestimmte Charaktere hatten, das aber später behoben wurde. –

+0

@Akah Ich benutze 5.1 Community-Version. Ich habe nicht versucht, eine Redirect-Anpassung vorzunehmen. Die problematische Benutzer-ID ist admin, während andere Benutzer in Ordnung sind. Selbst die Index-URL auf der linken oberen Leiste nach der Anmeldung wurde in diesen langen Unsinn geändert. Und nach einem Systemneustart und geänderter IP hat die angehängte URL immer noch die alte IP, was mich dazu bringt, mich zu fragen, ob es irgendeinen "Cache" in alfresco gibt, der verwandt sein könnte. – xgdgsc

Antwort

0

löste ich dieses Problem, indem Sie den Kater Cache mit Reinigung:

$ rm -rf tomcat/work/Catalina/*