[MAGNOLIA-1546] Subscribers with custom contexts are not properly mapped Created: 11/Apr/07  Updated: 23/Jan/13  Resolved: 24/Sep/07

Status: Closed
Project: Magnolia
Component/s: None
Affects Version/s: 3.1 M1
Fix Version/s: 3.5 RC1

Type: Task Priority: Major
Reporter: zam6ak Assignee: Sameer Charles
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
relation
is related to MAGNOLIA-38 Subscriber URI mapping Closed
is related to DOCU-42 Document new activation configuration Closed
is related to MAGNOLIA-1592 Revive Subscriber class for 3.1 (depr... Closed
Template:
Acceptance criteria:
Empty
Task DoR:
Empty
Date of First Response:

 Description   

If using single Magnolia Author instance to manage 2 or more websites (with multiple subscribers), setting custom contexts does not create proper mapping
Scenario:

single author instance has 2 websites (internet and intranet) each starting from single folder under root:

/www-mycompany-org
---/www-index
---/www-page1
/home-mycompany-org
---home-index
---home-page1

Each site then has 2 subscribers (for redundancy) whose website context subscribedURI has been set to filter out top folders.

Problem #1:
You cannot activate pages under top folders unless the top folder has been activated itself. Why the filter then?

Problem #2:
The desired effect is to have public instance behave as it is managed by single author so that for www subscriber the folder /www-mycompany-org should map to / and so on.
For the case above if my author host is cms.mycompany.org and public host is www.mycompany.org then the index page will have URLs:

on author: cms.mycompany.org/www-mycompany-org/www-index.html
on public: www.mycompany.org/www-index.html

Otherwise what would be the point of managing multiple sites with the same author?



 Comments   
Comment by Sameer Charles [ 25/May/07 ]

basic functionality committed on svn, still needs to refactor SimpleExchangeServlet

Comment by zam6ak [ 06/Jun/07 ]

There are still few issues with this:

1. if the mapping has a trailing slash in the fromURI then the root page should not be published

on author:

/site1/
--/page1
--/page2

mapping:

fromURI: /site1/
toURI: /

on public:

/page1
/page2

2. deactivating /site1 on author does not remove pages on public (but shows /site1 as unpublished on author!).
If a mapping pattern is used without trailing slash, then only root page deactivates...

Comment by Sameer Charles [ 06/Jun/07 ]

1. Activation with trailing slash is working with the latest commit.

2. Deactivation - /site is not subscribed in your setup so deactivating /site will not send any request to the receiver

Comment by zam6ak [ 06/Jun/07 ]

Update:

3. following mapping does not work:

on author:

/showroom/
--pages below....

mapping:

fromURI: /showroom/
toURI: /demo (also tried /demo/)

I get exception:

ERROR info.magnolia.cms.exchange.simple.ReceiveFilter ReceiveFilter.java(importFresh:250) 06.06.2007 10:19:09 Exception caught
javax.jcr.RepositoryException: /demo/: invalid path: Empty path element: /demo/: Empty path element: /demo/
at org.apache.jackrabbit.core.SessionImpl.getImportContentHandler(SessionImpl.java:1066)
at org.apache.jackrabbit.core.SessionImpl.importXML(SessionImpl.java:1107)
at info.magnolia.cms.exchange.simple.ReceiveFilter.importResource(ReceiveFilter.java:317)
at info.magnolia.cms.exchange.simple.ReceiveFilter.importFresh(ReceiveFilter.java:245)
at info.magnolia.cms.exchange.simple.ReceiveFilter.update(ReceiveFilter.java:147)
at info.magnolia.cms.exchange.simple.ReceiveFilter.receive(ReceiveFilter.java:105)
at info.magnolia.cms.exchange.simple.ReceiveFilter.doFilter(ReceiveFilter.java:67)

Comment by Sameer Charles [ 06/Jun/07 ]

on svn

Tested

1)
fromURI - /path/
toURI - /

2)
fromURI - /path
toURI - /

3)
fromURI - /path/sub/sub1/
toURI - /pathOnPublic/

Deactivation also works for all pages which are "susbcribed"

Generated at Mon Feb 12 03:27:57 CET 2024 using Jira 9.4.2#940002-sha1:46d1a51de284217efdcb32434eab47a99af2938b.