how to separate liferay web server and application server - web

I have a requirement to separate the liferay into web component in apache web server and service into apache tomcat. Could anyone provide me with some pointers on how to do the same?
thanks
L Raj

Apache cannot execute any jsp page or servlet, so you only could separate the static files (like images, css, js and so on) from the dynamic's (jsp, servlets, etc.).
So, as Olaf indicate in his comment we need more information about your objective or use the Apache features to make the split.
Best regards.

Related

Developing for IIS and IBM Websphere

My company is looking to develop a web product that will need to run on both Websphere and IIS. Ideally, we would like to use the same framework for both, but I am currently ignorant of the options, if there are any. On IIS, we would most likely use ASP MVC, and JSP on Websphere. Is there some common technology we could use on both platforms?
IIS is a web server. Websphere (or what just the term Websphere commonly refers to) is an application server, Websphere Application Server (WAS). IIS would be more comparable to IHS (IBM HTTP Server) or Apache HTTP Server.
So the answer to "Is there some common technology we could use on both platforms" is probably JSP since WAS is mostly just a Java application server.
A reference for running JSP on IIS Lightweight servlet engine for serving java application via IIS
Here is a more detailed discussion on application vs web servers
What is the difference between application server and web server?
A more general note: Getting the same application to run exactly the same in both environments will likely be a difficult task for any moderately interesting application.
What would be truly common to both is HTML, CSS, and JavaScript. That is, client-side technologies rather than server frameworks. So I'd recommend at least considering one of the JavaScript MVC frameworks. TodoMVC.com compares several of them.

JSON server suggestion on linux platforms

I need to create a JSON service to get and post data from a local and remote http/https server on Linux for my mobile apps. -I'm using MySQL as DB engine-
I tried with Glassfish EJB/JSP (I like Java), but it was a kind of frustrating, due the poor support that my linux development machine (mint 13) has for Oracle Glassfish.
In your opinion, what is the best way to make a remote JSON server on that environment? which alternatives do I have?
If you want to accept and send back JSON, you want a JAX-RS-based service, not a JSP one.
You will most likely use Jersey, RESTEasy, CXF, or similar implementations of the JAX-RS specification.
Sending back JSON from a JAX-RS implementation is trivial; that's what JAX-RS is designed to do. Generally speaking, JSP is used for web applications (where HTML, CSS, images, and JavaScript are returned), while JAX-RS is used for RESTful web services, where JSON, XML, and YAML is returned. You can use JSP to produce JSON, but it is not common.
As far as your overall architecture is concerned, any webserver is fine (Apache, Tomcat, etc.) and you can use either Springframework or a full app server like JBoss or Glassfish. Springframework has its own REST support, but I've used JAX-RS several times with Spring and it works very well. Since you already are using Glassfish, integrating a JAX-RS implementation should be straightforward. This article from Oracle shows you how.
Well, I guess you need to find a good framework where you feel confident.
I use Zend PHP + Doctrine to serve my apps. Why? I just create simple controllers in a good MVC like Zend and use all power from Doctrine to handle queries. Ok, but why? Because I develop quick and neat code on it.
Best

Building website for domino server

I need to make a small website to be hosted at a domino server but as far as I understand, I couldn't use a simple .html file or .php, instead it works with some weird stuff like .nsf, right? Also, it isn't clear to me wich language is used to deploy webpages with domino server, and if there is a good book about it.
Starting with Lotus Domino 8.5.x you can create web applications using XPages. XPages "is based on web development languages and standards including JavaScript, Ajax, Java, the Dojo Toolkit, Server-side JavaScript and JavaServer Faces" (source: http://en.wikipedia.org/wiki/XPages).
If you are interested in learning more about XPages, the following book is very useful:
Mastering XPages: A Step-by-Step Guide to XPages Application Development and the XSP Language
There is also the "classic" way of creating web applications with Lotus Domino if using XPages is not an option. The following book provides a good overview of that method:
IBM Lotus Domino: Classic Web Application Development Techniques
You can use simple static html files but the beauty of Domino is that you can develop dynamically created web sites using the back end database processes.
If you want to do something with just html then drop your html files into the /domino/html folder and they will be served out.
If you want to do something more powerful start at http://www.xpages.info which is run by the Open Source community for Domino.
There are quite a few out of the box projects available such as Wikis, "Team Rooms", discussion forums, blogs and document libraries. Some of these are also packaged with the domino install. Some of these are content management systems with some of the same functionality as wordpress or Joomla and might work well for you.
Some examples : http://xpages.info/XPagesHome.nsf/Demos.xsp
As with any platform there are quirks and gotchas but it is a brilliant platform. Contact me if you need a better steer.
You could use the domino/html approach or you could utilize the new web development interface and environment in Domino, since 8.5, called XPages. It's a technology derived from JSP (Java Server Pages) using standard web methods and technologies such as Java, JavaScript, AJAX, DOJO, CSS working with predefined Custom Controls giving you the drag and drop approach to development.
Several book are on the market, one of them close to release:
XPages Portable Command Guide: A Compact Resource to XPages Application Development and the XSP Language
Mastering XPages: A Step-by-Step Guide to XPages Application Development and the XSP Language
XPages Extension Library: A Step-by-Step Guide to the Next Generation of XPages Components
For instructional videos, there's XPages.tv (Videos)
While a Domino server typically is used to host Notes application (.nsf files), you can use it to host raw HTML files. The default root for this is the domino\html directory.
The documentation on web server configuration has more details on this.
Configuring HTML, CGI, icon, and Java files for Web Site documents
The following tech note details how to run PHP on a Domino server, although Domino itself does not have PHP.
http://www-01.ibm.com/support/docview.wss?uid=swg21099845
There is also this article on how to create PHP for Domino.
http://www.ibm.com/developerworks/lotus/library/domino-php/
Host a static html file in a different place to domino directory
If you want to persist your static html files in a different place to domino\html then you can do this in the following way:
Configure a new WebSite for your domino server:
https://www.ibm.com/support/knowledgecenter/SSKTMJ_10.0.1/admin/conf_configuringhtmlcgiiconandjavafilesforwebsite_t.html
Copy your files to the specified folder on your server's disk.
Example:
Website:
File on domino server:
Open in browser:
With this approach I have deployed a complete angular single page application on a domino server.

CoffeeScript, Node.js, MongoDB and JasperReports, is it possible?

I just realized a JSF (web JavaScript application) that connect to a MongoDB database and generate a report (PDF) thanks to JasperReports Library (so with a .java file).
Is it possible to do the same thing with a web application in CoffeeScript and Node.js? I am really new to this, so I don't know where to start.
For example: Is it possible to run a .java thanks to Node.js or CoffeeScript?
JSF is actually a JavaServer Faces application, not a JavaScript application. JavaScript (which Node.js, CoffeeScript are based on) is not equivalent to Java despite the similarity in names.
If you already have a JSF-based application then you already should have everything you need to create a web-based application. There is no need for Node.js, CoffeeScript, etc.
Go take a look at JSP, Tomcat, etc. to figure out how to render web pages rather than output to PDF and you should be set.
If you want to rewrite your application in javascript and run it on node.js, you should be able to use PDFKit to build the PDFs.
If you only wish to use your existing application and integrate it with a node.js server, I think you would be wise to run them in parallel (or proxy requests to your JSF application through node, in case that makes sense). It's hard to give a better answer unless you can state more clearly what it is you want to accomplish.
Yes, it's possible. You can start / stop / control another process with Node.js - so You can start .java in another process and use it to generate PDF. But ... it may be not very efficient in terms of resource usage, so it's an open question.
Or, you can write a simple worker that will generate PDF from JSON data and use 0MQ or other inter-process communications between Node.js and this Java worker.
He-he, JSF was one of the worst technologies I ever saw (I believe it's still in the same state now as it was in 2007 when I left Java), even dumb JSP and servlets was better...

Clean url in my existing web site

I have too many doubts about this topic.
I want to create a clean url website. I know it's possible using .htaccess. Is .htaccsess support in all servers? Where did I get the server information? Using Php info?
.htaccess files are used in web servers such as Apache. Many other web servers like Sun Java System Web Server and Zeus Web Server implement the same synthax. But if you're using PHP, you are probably using Apache.
Source: Wikipedia
You can get info about the web server by using the phpinfo() function in PHP.

Resources