We need Magnolia 5.5 integration with Microsoft Dynamics(CRM) but as per the following magnolia documentation the integration is not available out of the box with Magnolia. Magnolia Documentation
How can we build that functionality in Magnolia, please advice.
Thanks in advance..
All depends on what kind of API Dynamics exposes for such integration. And what features of Dynamics exactly do you want to integrate.
If there is any REST based API, you can have a look at similar integrations (those for SugarCRM, Eloqua or SalesForce come to my mind) and do what needs to be done. Source code for the above integrations provided by Magnolia is AFAIK available to all Enterprise customers.
Typically you have two parts of the integrations
- backend one where you create content connector for an app and the app directly to allow your editors to interact and select items from Dynamics, and
- some templating functions that allow templates to understand items previously selected by the editors and retrieve those from Dynamics when rendering the template.
- typically you will also have to deal somehow with authentication between Magnolia and Dynamics and (unless all is super fast) with caching items retrieved from Dynamics in Magnolia in some form of volatile cache.
But really, any more details on what to do and how depends on the use case. It would be different for building customer self service portal and for e.g. just listing phone number of the sales/support rep closest to visitor of the site based on geolocation.
Related
I have a Spring MVC application that connect with Alfresco using CMIS libraries, actually I can upload documents and download it but I need integrate Alfresco's WebPreviewer to preview documents in my app.
I found some code here but I don't know how to do it
It's hard to say for certain because of the limited amount of information that you've provided, but I think that the problem that you're going to be faced with when trying to use any of the existing previewer code is one of authentication. If you're using only using CMIS then you won't be able to use any of the WebScript based REST APIs that the Alfresco widgets will be using.
There are two possible previewer widgets that you can use - the older YUI2 based previewer (that you'd currently find in the document details page and the Document Library film strip view, and the newer Aikau component that you'd find in the faceted search previewer (from version 5.0 onwards).
I suspect that you won't be able to re-use either of these components without either authenticating against Alfresco in a way that allows you to access the WebScript based REST APIs or extending and customizing those widgets.
You've said that you have your own Spring MVC application, but you haven't said whether or not that is using the Surf extension - if it is, and you're using the authentication capabilities provided by Surf then you will be authenticated to use those REST APIs - as the Surf authentication provides access across all APIs (including CMIS) via a single authentication.
If you are able to access those APIs then you should be able to follow the steps outlined in both the form post and the blog posts in your own question and the previous answer, however - based on your question I suspect that you can't do that.
If you've not come across it, you might be interested in the Aikau archetype that builds a ready-made Alfresco client using Surf (see this link) and that tutorial also shows how to use the Aikau previewer (see here).
Because this is providing you with a Spring MVC client that is preconfigured to authenticate against Alfresco, you might be able to port your application to use it.
Otherwise, as I said earlier - chances are you'll need to extend the existing widgets to use the CMIS APIs to render the previewers. Again, Aikau is easier to extend that the old YUI2 widgets - but is reliant on Surf.
i have just started learning adobe cq and i see terms(and api) like tenant being referred to.
what does a tenant refer to in CQ terminology.
also is there any good tutorial any one can refer.
An Apache Sling Tenant supports this sort of model: one CQ5 instance provided by a hosting service, multiple sites for multiple customers of the service using the same instance, each customer sees and controls only his own content. There's not much documentation that I can find. There is a draft design page for the feature. I doubt that CQ5 fully supports the feature.
I've been asked to develop a .NET web application with the following requirements and features:
Moderate software license expenses
.NET Web Application
Document storage (with change history, although a complete CMS is not needed)
Complex data model
Extensible and groupable object attributes
Private/public field visibility
Non-trivial relationships between database tables
Custom alert configuration (screen and e-mail notifications) about approaching due dates, missing documentation, etc.
Resource access control & user management (roles and groups)
High user volume (several thousands of users)
Many complex and dynamic forms
Search engine
Statistical reporting
Bulk data & metadata upload and download
Simple data migration
REST API for external integration
Multilanguage
Full-featured mobile version (for tablets and smartphones)
Corporate look and feel
These are the options I have considered:
SharePoint Foundation 2013 + Custom Web Parts + Custom DB + Document Libraries
Sense/Net + Custom Web Parts + Custom DB + Document Libraries
Custom ASP.NET Web Application
What approach would you recommend? Also, can you please make a recommendation on the following points?
Server characteristics and topology
Application architecture
Scalability
Search capabilities
Reporting tools
Persistence framework
Document storage (MS Office)
Mobility
First of all, I work for Sense/Net, which I want to put out there to be fair.
However, even if I wouldn't be, I'd still recommend looking at our solution based on the criteria you outlined. What you are planning to build seems to be really custom stuff and from experience, I can say that projects like this never changing. Going for an open-source application would definately be my choice, in order to make sure I don't hit a wall later down the line.
Sense/Net is practically capable of delivering everything you need out of the box, but of course, customization will be needed.
From a licensing perspective, you would also be better off probably, since we only lincense the CPU cores, not the thousands of users benefitting from the system.
Writing a custom application from scratch with these requierements would make no sense in my opinion as the costs would be well over the one of a readymade solution (whichever you choose).
The things need to be clarified are the reporting tools you will need and whether you need a native application for mobile devices (or would something working in their browsers would be sufficient).
I can see that this answer is well overdue, but if the topic is still of interest and you havent done so yet, drop us an e-mail through our website and we can help you out in finding the perfect solution!
I am comparing Alfresco, Magnolia & Joomla especially specific to following features:
a. Ease of Integration of user created templates.
b. JCR (JSR-170?) or CMIS compliance.
c. Scalability in architecture.
d. Mobile site deployment.
I used cmsmatrix.org to compare features but I could not get some of the specific information related to above mentioned points.
Any insights based on your experience on working with one or more of the above CMS products will be helpful.
Thanks,
Krish.
While these four products are branded as CMS I don't think they are really comparable. Drupal and, for what I know, Joomla are web publishing CMS (or WCMS), they are designed to create web sites and manage their content. They are not designed as generic CMS, DMS or ECM. Alfresco, and probably Magnolia, are ECM/DMS designed to manage enterprise contents.
For instance, while manageable in Drupal (given enough effort and custom PHP code), complex multi-states multi-actor workflow for multilingual documents (PDF, Office, etc.) are probably easier to manage with Alfresco. And Alfresco is probably not suitable to manage web content with lightweight publishing workflow and user generated content.
Having the managed content published on a web site does not means it has to be managed by the same tools that the one used to manage the web site. For instance, using the Drupal CMIS module, you can bridge it with Alfresco (or any CMIS compliant ECM) to manage your enterprise content in the suitable tools but publish parts of it on a Drupal site.
Summarizing inputs I received here along with what I found in my search from various discussions so far (thanks #mongolito404 and bkraft).
For web content management features - Drupal / Joomla is recommended.
For Enterprise Content Management / Document Management features with minimal web publishing features - Alfresco / Magnolia is recommended.
For specific requirements the best of different tools can be used - Drupal to publish web content via CMIS support. Alfresco as solution for workflow & document management.
Alfresco already supports & continues to have CMIS in product roadmap (contributes to CMIS community).
Drupal is CMIS compliant (OOTB) with strong web content capability.
Leveraging best of both (Alfresco & Drupal) could also be one of the options depending on the requirement. Refer: http://www.optaros.com/blogs/drupal-alfresco-integration#
Another interesting option seems to be Liferay (v6+ specifically) with their CMIS integration capability: http://www.liferay.com/web/jonas.yuan/blog/-/blogs/integrating-alfresco-through-cmis-in-liferay
Thanks,
Krish.
Can't speak for the others, but from Magnolia's perspective, ease of integration is certainly a core feature. It runs on the Java platform, so integration is a given from the platform side. In addition Magnolia has been rated the most flexible CMS on the market today by independent analyst Tony White of Ars Logica download his free report (always worth a read, and other reports are also available).
JCR: Magnolia is based on JCR, and was so since the first line of code
CMIS: not implemented yet, but planned for Magnolia 5 to be shipped late this year
Scalability: Magnolia's got it covered. See our case studies
Mobile site deployment: again, comes naturally to Magnolia thanks to its architecture and rich out of the box functionality.
Regards
- Boris
Update: CMIS is available as a community module since Magnolia v4.5
my next assignments is to build 2 information portals for customers. These portals will be login protected sites and contain a set of pages displaying information like orders, invoices, pdf-files ... for the authenticated user (all presented as lists with links to detail pages). The users and the data are stored in an Oracle database. The portals differ in some of the features and in the layout.
My standard approach is to build an individual ASP.net Web Application for every portal.
But this is not the best way to get something reusable. So for these two projects my idea is to create a set of WCF services to get the Data from the Oracle database and to build user controls to display the different elements in Umbraco. This way I hope to get a set of independent, reusable “modules” which can be used to build these portals.
Now my question: is Umbraco a good platform for this type of projects? And is my “concept” a valid approach?
Kind regards
Volkmar
Umbracois very flexible. ON the one hand there is the question about security: With Umbraco you can use any Membership Provider you want for all visitors ( also with member roles).
On the other hand you have the question of the integration: With Umbraco you can create usercontrols, xslts or razor files as macros (which can be seen as the reusable modules).
For Xslt you can implement your own XsltExtension which pulls the external content as XPathNodeIterator you can use in every Xslt macro. For ascx files or razor you can use LinQ2Umbraco, your own objects etc to connect to the oracle database.
You also can use some sort of caching functionality to reduce the db-calls. On the other hand is one of the biggest advantages that Umbraco stores all the content as xml and object tree in memmory. So it is very fast in content rendering. With every database call you are loosing a little bit of this advantage.
hth, Thomas
Ruben Verbourgh began the Oracle4Umbraco project to create an abstracted fork for the Datalayer to support running on an Oracle DB. You can find it at http://oracle4umbraco.codeplex.com/, although it has no active releases, so build from source and YMMV.
Volkmar, your concept is perfectly sound - although you might want to consider using the Umbraco data store as the persistence layer for your data rather than in the Oracle DB itself. You get XML content versioning, caching, and all the benefits of the content-management side of things, in a robust and flexible framework which you can expose to other apps later should you so need to, through the Umbraco APIs and web services.
HTH,
Benjamin
content management of website becomes simplified with Umbraco.
But if you are planning to use Oracle as backend, Umbraco does not have support for it.
So decide carefully as to what parameters can be compromised.
Good luck.