I was just trying to understand about what would be a valid set of project requirements which would warrant investment in AEM forms?
If you just have a few forms to develop - does it make sense to go for AEM forms and not just use a custom solution using HTML / Js , etc to be able to do this?
I'm talking specifically about AEM forms OSGI and not the JEE one (JEE one has BPM features similar to Livecycle).
AEM forms make sense if
Authors want control on form fields.
Tracking conversions based on options within the forms (analytics integration is required to get best results)
Target integration for changing form fields or flow to give customised experience
data injection from AEM stack when using form data sources.
Yes, you can pretty much do a lot with just custom forms and some knuckle grease but most of it is built in the AEM forms and give UX flexiblity to the authors.
Of course, like everything else, AEM forms come with their issues but it's down to individual business requirements.
Related
I have an existing website using a fairly "standard" Symfony full-stack, using the Form component to display and process html forms.
Now, I am creating a REST API to retrieve and manipulate our resources, and I'll use the FOSRestBundle to help with that.
I want to offer nice error messages for the forms, and FOSRestBundle ships a default way to do that. Great.
My question is: should I use the SAME form classes I used in Web? Or should I duplicate all of the forms and start from scratch?
The API will need much of the same validation as Web, but some things like Captcha and CSRF are for sure different.
Thanks for any input on this.
It's a matter of taste.
If you have very different forms then it will be easy to do new form-classes. But if you have almost the same you can use your existing forms.
In one of my projects I had different fields in forms for API and Web but I had one Form class. I just check every time: is it API or Web. And manage fields according to the type of request.
Let me explain first that I'm new to web development and it's not my area of interest. A few months ago I made a quick research of various web technologies and I decided that I will learn ASP.NET - Web Forms. This has been working out for me for a simple site - I like the master pages idea and the modularity idea supported by custom controls. I made a few custom controls that I surely wouldn't find on the internet.
Problems began when I started to look for a blog that I could elegantly integrate into my existing master page with my existing themes and styles. The best thing I could find was BlogEngine.NET. But it is designed as a standalone blogging system, not as a control (I just want to display the posts and comments). Isolating what I want from the code base and integrating it with my web app is going to take unknown amount of work and time.
So I turned towards CMS with a blog - Orchard looked very promising. Then I realised that integrating my own Web Forms into Orchard is almost an impossible task for me (definitely not something I have time for). What do I think is the problem here? The CMS is not providing reusable components for easy integration in the spirit of Web Forms - it locks me in - as long as I stick to what they offer I am safe, but once I want to integrate my own Web Form - it's a no go.
So, do you know any NET CMS that allows integration of third party web controls just like you would do without CMS? Or better still - is just a collection of isolated, reusable components?
I realize this is an old thread, but don't know if you ever got the info you needed. If you are OK with commercial software, you might consider SiteFinity (by Telerik) as it uses master pages to generate layout, and webforms user controls for custom code. If you are more in need of an open source/free product, you might consider looking at MojoPortal or CarrotCake CMS.
To get the core question out of the way first: has anyone used the Ektron content APIs and can comment on using them to get Ektron CMS content instead of using native Ektron controls? I'd like to use these APIs in an ASP.NET MVC site.
Now the background: we have a client with an existing site that is a fusion of Ektron (for basic content) and a custom database/codebase for other pieces of functionality (product data, ecommerce, etc). We need to build what amounts to a microsite for a specific product line, with the following requirements:
Drive as much basic content (copy) as possible from the Ektron CMS
Most other content would come from the custom database
Ecommerce functionality should integrate with the main site's cart (the cart is custom-built and can be extended if necessary)
Login status may need to be shared (I know there is already an SO question that addresses this piece)
I'd rather not struggle with WebForms and attempting to style Ektron controls, so I would like to recommend that we build the subsite as a standalone MVC application. Are the Ektron content APIs robust enough to support such an approach, or would this route just lead to tears and broken dreams?
Any insight is appreciated. Thanks!
I coded a site with a large proportion of non-Ektron controls, but I used Webforms.MVP rather than MVC. This allowed me to mix-and-match MVP controls with the Ektron controls.
Ektron has got a couple APIs - there is an older web service based API which should be accessible from a non-Webforms project. I am not sure if it is possible to access the newer APIs (i.e. the non-web service API and the newer Framework API) fomr a non-webforms project. You would probably want to do a quick proof of concept for this to confirm.
The robustness of the Ektron APIs is a bit variable. Generally I have found dealing with simple HTML content to be good. Membership/login isn't too bad either. From memory, I've had problems with the more obscure components - eCommerce, Taxonomies, Blogs, Calendars. Generally, the problems include-
Empty properties
Lack of documentation
The newer Framework API (initial release in v8.0, covering Content and Folders, with a full release in v8.5, due in Aug 2011) is a lot easier to use, though I've still had occasional problems with empty properties.
Overall, as long as you're sticking to HTML content, you should be fine, provided you can access the API from a MVC project.
I want to implement rich reporting features in one of our asp.net mvc based web applications. The required features in the reports are
Graphs
Charts
Grouping, sub totals, page breaking, etc
Ability to export to excel, pdf, csv and other formats
Printing Support
We are ready to purchase commercial controls(if free ones are not available). Please suggest us the best of available options.
I do not know what rich reporting packages are out there that are 100% ASP.NET MVC-driven. I've seen a few talk about MVC.
But technically, you don't need an MVC-version of reporting controls. ASP.NET MVC allows you to use standard ASP.NET functions, such as WebForms, postbacks, server controls, etc. This is easy as a drop-in-place solution because ASP.NET MVC's default Convention-over-Configuration programming checks to see if a directory or file exists first, before being routed through the controller logic.
So, if there are no Asp.Net Mvc versions of graphs and charts you like - then fear not, you can fall back to the ones you've used for your previous asp.net forms projects. Even though I recommend sticking it into a dedicated directory (i.e. /reports) to keep a clean website.
I suggest you try and use a regular web form for the reports, with graphic, charts, and any other ontrol you might need. MVC views and web forms can live in the same project, noting wrong with that. At least until you find a way to do it using a MVC view.
In my own opinion, you don't have to do everything MVC in a project, you are "allowed" to do whatever you need to do to make your application work the way you want to.
You can use the asp.net chart control which is free to download and supported with ASP.net MVC
I found this while searching for something similar.
http://www.componentsource.com/products/syncfusion-essential-studio-aspnet-mvc/index-gbp.html
I haven't used it though. There is a trial download.
I am not sure how to phrase a good question, so I will just say what I am after!
I have to retool a web application for our vendors and part of that requires restricting content on a vendor by vendor basis. Looking at ASP.NET (MVC) this seems easy enough using the built in Authorization Filters and the IPrincipal and IIdentity interfaces (I haven't used them yet, just reading, so I may be using these terms incorrectly!).
What I'm not interested in doing is writing all the code for managing users and roles. I would love to be able to assume all of this is done for me by a third party application, and my code simply specifies roles required.
Now, I'm not exactly sure the product I am after, or if it even exists. Is this a CMS? Right now our vendor site uses a very old version of DNN. Some of our existing custom code is written as a module within DNN. I am not interesting in this type of solution at all. I want to be able to build a standard ASP.NET webapp and not be tied to a certain vendor 'module' definition. It seems like this should be possible if the CMS / Portal implement custom providers behind the ASP.NET provided API's, yah?
The primary (only) customer here is developers, if that makes sense.
Notes:
I really don't need a full blown CMS, which is why I'm confused on what type of product to search for. Some CMS functionality might be nice, but the site is only for very specific vendor interaction that is going to be 95% custom.
I see that ASP.NET provies a website administration tool, and that is cool, but doesn't solve the public facing aspects of user interaction.
ASP.NET provides extensive membership and role management APIs that are pretty easy to work with since version 2.0. They are available in ASP.NET MVC. Probably they do not require much more work than you would do anyway for styling or other stuff. But since you don't want to do it anyway, you can use a simple Web form with a Login control in your MVC app and make routing ignore that path with:
routes.IgnoreRoute("SignIn.aspx");
Just drag a login control to SignIn.aspx as you would in any Web form app.