How do I surface ASP.NET MVC 2 applications through Websphere Portal 7 - asp.net-mvc-2

I know this question sounds like utter madness, but hear me out for a second. We're a mixed language shop that has a lot of ASP.NET MVC 2 applications in production. We've no interest in rewriting those applications in another language. That said, we're also a huge IBM/Notes shop. We plan to make the move to Websphere Portal 7. Most of our Lotus Notes applications will obviously integrate pretty smoothly; however, we're wondering if we can surface our .Net applications through the portal. I've used the IFrame portlet on a page and just pointed the url to the location of a few of our .Net applications. It appears that the application loads, allows for file downloads as it should, can still detect Active Directory, and even the jquery we're using to trigger the auto-save in the background works just it should.
My question: is there a better way to do this? I know it's not ideal.
Another question along these same lines is: do you know of a more robust IFrame portlet that will let you set the width and height of the portlet or will dynamically re-size itself based on the contents it's loading?

You can also use the Web Application Bridge, which might be the best solution for existing applications. For new development, I would recommend wsrp with netunity.

You can use Iframe to display the links of the existing .NET application.
So there wont be any need to re write the entire code.
Hope this helps :)

My understanding is that you can use WSRP to do this. NetUnity is one option. MS apparently has one as well. Would love to hear how it goes.

Related

How to use DreamWeaver with a dynamic site or CMS

A client I'm working with has a large CMS installed (Kentico) that they use for various sites. For their intranet they want to downsize to a simpler web system.
The site involves authentication (Active Directory), groups, and potentially some server-side code.
The client's on-staff web designer, who's in charge, really wants to be able to use DreamWeaver to manage/design the intranet. This is almost non-negotiable, and could be considered a requirement.
I'm not really sure what DreamWeaver allows. Being ignorant to DreamWeaver, I always saw it as a web-designer platform for static websites, or in use with php.
How feasible is it to use DreamWeaver to manage an intranet site that requires authentication, groups, etc., along with server-side code? Also, are there any CMS's that easily integrate DreamWeaver? Anything in .NET?
Dreamweaver is mostly a front-end tool that was made for coding HTML, CSS, and JavaScript and being able to preview the design as you wrote your code. As an Adobe product, the real emphasis there is on design: it's made to make visualizing the front-end of a website easy. It's a good starting point for a lot graphic designers to step into web development (it's where I started a few years ago), but you'll rarely find a veteran web designer that still uses it. You'll certainly not find any .NET devs using it who know better.
Now, there's nothing wrong if that's this person's favorite tool. However, Dreamweaver is NOT the right tool for working with .NET applications like Kentico. This would be akin to someone wanting to build a house using nothing but bricks and mortar. Sure, you'll be able make the outside look nice, but there's a lot more to a house than just the siding.
If your client has their heart set on Kentico, then they should look into working with Visual Studio. The community edition is free to use, even for commercial applications. I believe the difference between community and pro editions is that pro editions allow you install plugins and extensions and integrate with other tools whereas community edition is just the vanilla IDE.
Dreamweaver can still be used as their HTML, CSS and JS editor. It may have added support for other languages, but that's irrelevant when we're talking about .NET applications. Visual Studio is Microsoft's IDE built specifically for working with .NET apps, and there's really nothing better (especially if you have a pro license and install Resharper from JetBrains). Many other devs will agree with me on this point.
EDIT: I forgot to address the other part of your question about Dreamweaver and other CMSs.
This series of video tutorials about working with Dreamweaver and WordPress should give you a good idea of what Dreamweaver is capable of. Notice when the narrator is actually using Dreamweaver and what he's using it for.
Jerreck's comments are great, and I'll just add a slightly different spin on them:
NET and Visual Studio live in the realm of developers. We use both for our core, cloud-based application, which is deployed in Microsoft Azure. Think: LEFT brain. I've worked with development teams for a long time. It is a rare developer who is also a strong designer. That's not a complaint; just an observation.
Dreamweaver lives in the realm of the web designer, who needs to manipulate HTML and CSS to achieve the effect they wish. Many of these designers ALSO start their designs in PhotoShop before moving them over to HTML and CSS. Think: RIGHT brain. I've worked with designers of all stripes for a long time as well. It is a rare designer who is also a strong developer. That's not a complaint; just another observation.
The ideal workflow starts with the designer (like the one at your client who needs to use Dreamweaver), who then passes his or her work (along with the HTML and CSS) to the developer, who in our case implements it in .NET -- so this is where Jerreck's comments miss the mark a bit.
While I know nothing of the designer at your client, I can tell you based on my experience very FEW designers ever make the leap to Visual Studio, nor should they. Most will know HTML reasonably well. Some will know CSS -- though too many of them still depend on outdated tables to create their designs. A few can code with JavaScript or PHP -- though many will cut and paste code that will work for them without actually understanding HOW it works.
Now add to this content management. This isn't really for the designer OR the developer; it's for the people who have to maintain the site (who might otherwise design like welders and write code like plumbers; because that is sometimes what they actually do).
The best content management systems are WYSIWYG, and allow the author or editor to easily add or edit content. Most CMS users do not user Dreamweaver OR Visual Studio, and many of them use free (or purchased) templates for their pages (or have a designer and developer build templates).
If your client needs CMS and it must be in .NET, you might check out DNN (formerly known as DotNetNuke). Most CMS also offer a wide range of plugins that can enhance function (such as assuring responsive design, tying in to a shopping cart or providing authentication for users).
I'd say your work ahead is going to be spending some serious time defining requirements.

Web-based or App-based for an Events-tracker?

I'm trying to plan out an application on the iPhone/Android that could be used to track dates/locations of events and update them as necessarily but I really have no idea what kind of method I should take.
Currently, there's two ideas for methods in my head:
1) Make a mobile webpage/website that could be updated with the necessarily information, then display this particular webpage/website on the App for users to view.
2) Make an app in iOS/Android to do the above without displaying the webpage at all.
The first idea is the easiest for me to grasp, since I roughly know the procedures of setting this method up. Displaying the webpages on a iPhone/Android screen should be relatively easy and this also allows me to only update the webpage with the latest information and all without (hopefully) building some kind of update system for the app itself.
The second idea is probably the better of the two, since I can make use of all the nifty features in the iOS/Android to make some pretty cool (what are the cool things, i don't know yet) things. I'm not exactly experienced in the field of creating apps, and I really have no idea how to start some kind of self-update functionality on an app, seeing all the apps I've done thus far are offline-based apps that does not communicate with anything save for local files. Should I get the App upon startup to download a file (XML or whichever?) to "read" the contents then update as necessarily?
Or should I just go for the first method, since it can be more efficient than the second one?
I'm really lost here, can anyone offer some tips and advice?
I believe that the first approach is a good one but I would suggest the following:
1- Create the website that will do all the business in your mind then
2- Port out the application in an easy way to be a mobile application how? Please have a look into this http://www.appcelerator.com/
3- Another idea that would save you the pain of going into all the above is to create a facebook application, this way you can make use of the facebook infrastructure and you will have the viral effect as I guess thats what you are looking for.
I hope I've introduced a good tips for you.

Liferay 6 / jBoss is there an 'easy' way to have clean urls?

I am working with Coldfusion 9, running under jBoss/Liferay 6.
All is well, I have developed quite a few portlets that I have made work around for (when I run into some issues that I could usually handle in a straight forward fashion). Overall Coldfusion 9 portlets work very well inside of Liferay.
One thing I really dislike is that the URLs are so unreadable, and I was really hoping for clean urls for my application, so when a user searches, and the result comes back, I can have them click a link like http://liferaysite.com/web/viewitem/ABC123.
Currently I get a raggedy URL that includes portlet status, properties, the portlet ID associated with the variable that I am passing (usually a combination of portlet id + variable) and other garbage that is un-needed.
Is there any 'easy' way to get clean URLs? My issue is that I am not a JAVA person, so I am not too confidant in digging into jBoss/Liferay code to get something done. However I feel that Liferay is sufficiently 'hands-free' so that I can build my portlets and deploy them without modifying JAVA code and getting dirty.
Any ideas? I am not able to find many articles on this, especially since Liferay 6 is so new, and there are so few people posting things about it. Maybe this would be some sort of URL rewriting in Jboss?
Thank you, appreciate any and all suggestions :)
The short answer is to use URL rewriting to achieve this and transform Liferay URLs to any form you want. There are 2 possibilities I see to do this:
Put an Apache web server in front of your Liferay server and use mod_rewrite
Use the URL rewriting filter that is already included in Liferay as this mimics what mod_rewrite does without the requirement of an extra Apache server
You might be interested in FriendlyUrlMappers. See this blog entry about the basics.
Regarding the "easy" you have to judge about that yourself. The nature of portals, e.g. combining completely different and independent applications (portlets) on a single page bring with it that you loose control over URLs (by default), because the portal has to disambiguate quite a lot of stuff. In order to get back control, you need to do some work, FriendlyUrlMappers impose some work, but the result is worth it IMHO.

Testing the Appearance of Web Applications

Duplicate:
Testing a website for cross-browser/multiple-version support
How do you test visual components
I recently talked to a colleague about a tool we use at work for system testing web applications. The colleague then raised the question as to whether we tested the appearance of the application.
Does anyone else do this and if so, how would one test it to ensure things don't get moved out of place or that things are the correct dimensions etc?
If you want to check what your website looks like in many different browsers checkout Browsershots.
One of my clients was already set up with Litmus when I got there and that project was a breeze to work on. So smooth.
I'd like to be able to roll my own system like that, though. It's too bad they don't sell the actual software - just the service.

moving a website built on struts to a CMS

Imagine having developed a classical website with java&struts.
Now you customer is learning that redeploying the application to change an image or a text is a significant cost. And it asks to add a function to the site: cms-like handling of the contents (editing, versioning, approved publishing).
How would you handle this request? Would you develop it in the webapp? Would you merge the webapp with a CMS? Would tou MOVE the webapp into a cms? Would you run away?
Building in simple CMS support isn't too difficult (provided putting the authentication and security isn't too stressful in your framework) but it can get really fiddly if you need to provide a whole WYSIWYG environment where they can upload content and format it.
If they want the whole lot, I'd consider rebuilding inside an existing CMS. If they can cope with simple edits, build that into your app.
But the thing that'll sway it for them is the cost. You need to let them know they're paying for you to re-build (and give them a quote so they know how much it's going to cost them). You can't swallow that cost unless you massively misunderstood the brief.
If they're not happy with what you've got so far but don't want to pay you for building it up further, explain you're happy to bring the original brief to fruition but invoice them for your time so far (or percentage of the contract if it's project based) and let them think about it.
If you cocked up the brief, you either walk away not or partially -paid and lose a customer, or take it on the chin and try to do better next time.