Apache MINA Vysper documentation? - java

I plan on making an instant messaging app on Android and iOS, where you can chat to other people with the app, along with some custom features.
I’m going to use the XMPP protocol, and make a custom extension for it. I plan on making a Java application running on Amazon Web Services (AWS) so it's scalable.
After researching server options I’ve decided to use Apache Vysper.
However, I’ve never made a proper Java application before, and have never used XMPP, AWS or Vysper – so I’m rather reliant on good documentation :-)
The Apache Vysper project is very new and so the docs are a bit sparse. I was wondering if I was missing something, should I be using the general MINA docs as well? Are there other resources
elsewhere I don’t know about?
“Apache Vysper can run stand-alone or embedded into another
application.”
To be honest I’m just as lost when it comes to working out what to use to make a Java application anyway. Do you know if the AWS Java SDK has everything I need to make an application to use on AWS? And then is it a simple matter of integrating Vysper into this? Or do I need to make a Java application using something such as the Spring framework?
Thanks for taking the time to help me. If you know anything that could clarify the situation I would really appreciate it :-) --and sorry be being a bit useless, but hey, we've all got to start somewhere right ;)

First of all, as the founder of Vysper I apologize that the documentation is lacking completeness.
To answer your question(s).
Most Java applications bring their own ready-to-go start scripts with them.
Vysper is no exception. You get the pre-packaged download here:
http://mina.apache.org/vysper-project/downloads.html
Ok, before running it, you need to have Java installed, whether you're on your own machine, AWS, a server or a virtual machine anywhere else. Get it from Oracle, or use the package management of your Linux distribution. Make sure that after installing Java, you can execute "java -version" on the command line and you are all set.
Then, unpack the Vysper download, change to the bin/ directory and execute "run.sh" or "run.bat", depending on your OS.
Please note that support for Vysper - besides here on StackOverflow - is available on the MINA user mailing list here:
http://mina.apache.org/vysper-project/mailing_lists.html

Related

How to share a java application for the clients without an installer?

I have a java application that uses swing and I would like to share it on my website, so that users who have no JRE on their computers can open it.
First, I naively thought that a link to download a .jar was enough but now I realize that it needs a JRE to be launched properly.
So then, I looked for other solutions and I searched information for the applets, until I understood that it was now obsolete.
Eventually, I tried to understand that Java Web Start thing but I am completely lost, as it needs several files to be created and to setup the server. The tutorials I found weren't very clear... As I am an Eclipse user, I tried to look for a plugin that would do this automatically but I cannot find anything.
Do you know a plugin or is there a simpler possibility to share this very simple java application in a website ? Or do I have to try and try again to deploy my application through Java web start.
Thank you for your answers :)

Setting up JSP Server?

OK so at work I've been working with Java to start migrating our legacy database and in-house systems to something more modern. Well today I was asked if there was a way to use HTML/CSS as a front end to the java programs I've made. So my coworker and I have set up Tomcat on our Ubuntu 12.04 server in hopes of using jsp. Now we don't know where to go. I've been using Netbeans for my java development and all the tutorials and articles I've found has been about installing the server on my PC and I think that can't be right. Are there any good, semi-current (as in not from 2003) tutorials or articles for setting this up? Both my coworker and I have experience with PHP and it's not this difficult to set up.
It doesn't matter where you install Tomcat, your computer or a separate server. Create your web application, drop the war into tomcat/webapps and you're ready to go (to http://yourservername.com:8080/nameofwar/). Of course if you've never actually created a web application, there's some additional complications.
If you're familiar with Netbeans, you probably want to create a Dynamic Web Project. Plenty of resources to be found with all this info I've given you.

How to start using velocity

How do I start using velocity? Is there a place that helps me understand what do I need to install? which server? how to start? first steps?
I know how to install wamp (I have windows) and work a bit with PHP on aptana - so this is my general knowledge and I need to know the first steps to velocity (what type of server do I need? Will Aptana do the trick or do I need to install also eclipse?)
thanks,
Alon
The "Getting Started" section in the Velocity developer guide is the place to get started on the code side.
What type of server do you need? Are you going to use Velocity to create a web application using Velocity? You'll likely want Apache Tomcat (or Jetty, etc.) to get started, because there's a ton of documentation and tutorials.
Aptana is Eclipse, but you might be better off with a plain old Eclipse; Aptana is geared more towards framework-specific functionality (PHP, Rails, etc.) You should be able to add the Java ecosystem web stuff to it if it isn't already there; not sure how easy/difficult it would be.
Be aware that making a jump from PHP to Java web development is a big leap in terms of what you need to know, how apps are generally coded, the Java ecosystem (libraries in particular), etc.

How to make a browser based IDE to code in the cloud?

I have read a bit about cloud and browser based IDE's.
I am planning to make a Java based bare bones IDE by integrating a compiler to code in the cloud. This is for educational purpose as I am just determined to learn to develop cloud based IDE.
I want it to be something like eclipse Orion but i want it to allow for coding in java. It should allow users to code, compile and run java programs by directly writing .java files and not by converting the .js files into java files.
Can someone please suggest me an existing cloud that I should use for this. And also, I am just a beginner and I have no clue about how to proceed and the articles that I am required to read.
Please do let me know what I should begin with and the cloud that suits my needs the best.
Thank you very much in advance.
You should look at projects like Mozilla SkyWriter, which implement the bare bones editing functionality
(There have been a lot of change lately. There seems to have been migrated to Ace)
You can use Codenvy and put your code on a Git repository. Then, you could build automatically once you have done the push using a CI tool like Jenkins. Now, I have an environment in which I use a Jenkins instance as a Service and also a runtime environment so I can get a continuous deployment pipeline. This video will show you, in a graphical way, what I am talking about.
Koding provides you with a full Ubuntu machine, with root, so it's able to run and do what you want, programming wise.
The reason i'm suggesting Koding though, is that they have a Framework to develop your IDE for the Koding VMs themselves.
The logic here, is that making IDEs is challenging, but the biggest challenges is ensuring security between your IDE users. Using another VM platform would mean that you don't have to manage the security of your VM, and focus entirely on your IDE.
Let me know what you think :)
For virtual/cloud hosting try one of the following:
Rackspace
VPS Farm
I like vpsfarm because it is cheap and pretty bare bones.
For the IDE itself, I would first create a webapp that can upload and compile and run arbitrary java code, without adding libraries or J2EE. That alone will be a good undertaking for one dev.

How do I implement my Java server?

I really don't know what I'm doing, and have been trying to learn about it, but I figured I would ask for help; I have a java server (essentially the one here: http://www.akira.ruc.dk/~keld/teaching/OOP_f02/Book/chap09/BroadcastEchoServer.java, just playing around with stuff so I can learn about it), and I want to be able to run it on the internet , so with the client applet I wrote that you can embed in a browser, say, you can connect to it from different computers. I really have no idea how to go about it. I downloaded some things (Tomcat, Glassfish), signed up for google app engine, and something I think is similar specifically for Java, but I'm not really sure what I am doing. I am thinking I get j2ee or something? I use a mac and xcode, if that's useful at all.
Thanks in advance
Oh, the client applet is like the one from a java socket tutorial here:
java.sun.com/docs/books/tutorial/networking/sockets/readingWriting.html
If your server is already working locally, what you need to do is to put it in a hosting service.
That way it can be accessible by everyone else.
That server, is an stand alone application ( that is, it doesn't need tomcat or glassfish, and certainly won't run on Google App Engine )
The only thing you need to do, is have it install it in a machine which is accessible from the internet. How to host an application is out of the scope of this site though.

Categories