I have started making some small Java games that run in a browser and have found a couple of game portals where I can host then (GameJolt.com, JavaGameTomb.com and Games4j.com). Most of the other portals I find either only allow Flash or offer the games for download.
Apart from those above, what other portals exist that allow hosting applets?
In my experience, it seems that Sun is not supporting Applets as much as it used to, instead preferring Java Web Start. My experience with applets has not been ideal, and others have had problems with it as well, especially in newer versions of Windows. I think that is probably a large part of the reason you are having problems finding applet hosting sites. However, for rich clients, I think Java is an excellent development system.
Just my 2 cents.
Related
I have a BlueJ applet that I want to run in a web browser. I've realized that the tutorial I was trying to learn from was outdated, and applets are really obsolete. What I'm trying to figure out (I'm searching but finding a lot more outdated info, hence my confusion) is what replaced applets, and if there is still a viable way to use my .jar file in a web app.
what replaced applets
The browser, as a runtime, has become powerful enough to make Java Applets unnecessary. Modern webapps with some amount of JavaScript on the frontend replaced Java Applets.
and if there is still a viable way to use my .jar file in a web app.
No, there isn't. Java Applets are dead and there is no viable way to run them for the vast majority of users on the public Internet.
If you are a software developer, you should abandon applets and start learning a modern full-stack framework. There are many to choose from.
May I suggest you taking a look at CheerpJ?
It allows for both old java applet to run and for java applications in general to be executed in the browser.
There is an extension for Chromium/Google Chrome that can be used for free to test the applet and our product.
Disclaimer: I work for Leaning Technologies, the company behind the CheerpJ project.
Good Day,
I have been asked to create a Java client/server desktop application for a deployment on a Windows server. My problem is i have done this many times but never for deployment for a real client. So my questions are what tools technologies, architecture designs procedures should i consider for this project. From conceptualization to actual deployment, what things should i consider, btw, the software will be using Microsoft access as the database... Thanks in advance
Building a standalone application is out-dated but still you can make it.
SWING make gives you a elegant look for desktop client.
Architecture designs can be decided based on the requirement of the software.
Note: This is may fit your requirements but I believe that it doesn't fit for your broader question.
Our current web has been a rails application for 4+ years now. It is current in version 2.3.8. Our MySQL database and data manipulation for presentation is extensive. We are about to undertake development of a companion site and are evaluating whether we should do that in rails, java, .net or php. Here are some of the factors we are considering.
RAILS
Development Environment: Our machines are pcs with Windows os. We have run into Windows-centric difficulties (too numerous to detail here), most of which we solved. We want to spend more time on code, less on windows/rails compatibility issues. We could switch to Linux or PearPC. Would that cut down on some of those issues, or just result in a new set? Long term... we could replace our pcs with macs.
Development Process: It seems like keeping up with rails architecture is like chasing a swiftly moving target. I'm sure that there are many of you out there that are perhaps a little more nimble :=] but we could use a tad more stability. Anyway, the more you fall behind the most current versions the more difficult it is to find help. One advantage is that we could copy and paste some of our existing code to the new site.
End Users: Attractive and easy to use application for pc or mac.
PHP
Development Environment: Works well on PC with Windows
Development Process: I don't know enough to evaluate here. One advantage is that the consultant who advises us regarding our training and education processes recommended Moodle which is written in php. A disadvantage is the need to learn php.
End Users: I don't know enough to evaluate here although i have seen numerous php sites that are attractive and seem easy to use.
JAVA
Development Environment: Great in pc/windows
Development Process: A disadvantage is the need to learn java.
End Users: Don't know enough yet.
.NET
Development Environment: great in pc/windows :=] Resource downloads were a little problematic.
Development Process: A disadvantage is the need to learn .net. We would probably go with MVC or C#.
End Users: obstacles for mac users?
Thank you Stackoverflow community!
EDIT: on one of our machines i did an ubuntu install. On configuring rails i ran into the same show stopper that plagued us with windows. one of our pc/windows machines is running fine for development. i have picked and picked apart that install versus the other machines and cannot find the source of the problem. i believe that rails is great... for some other team. we need a development environment that might not have all the advantages of rails, but is stable. i am not interested in "language war" banter... just plain, solid advice on which i can make a business decision that will lay a foundation for the next 3 to 4 years of our development initiatives. Thanks!
Another EDIT: My team and i reviewed opinions expressed here and elsewhere. After the disappointment with Linux, we have come to the conclusion that it is likely that moving to Mac from PC would eliminate the windows bugaboos and free us up to keep up with the changes in rails. So... we will be purchasing our first Mac... next week. Thanks all for your help.
Let's see. You have a working Rails site. A pain to maintain, perhaps, but it is working and has been for several years. You have in-depth Rails expertise. You want to build a companion site that is similar enough to the original site that you could share some of the code. You presumably have a business case for this new site and presumably you want it to be working Sooner rather than Later.
Stay with Rails.
While learning a new language will be interesting from an intellectual point of view, it will also be a huge time-waster with no clear benefit unless there is something so fundamentally wrong with your existing Rails infrastructure that it warrants a complete rewrite. Which is what using a new language really means.
Listen to Joel and don't rewrite your code from scratch.
To me, the question is more about moving your Rails platform to a Linux environment or staying with the Windows environment. Someone more expert in Rails will have to answer that.
Whatever your developers already know, use that. Unless you plan to migrate your technology to another platform, don't waste your time. As far as end users, it's a web site so thats where you'll hit your restrictions. Follow proper design and css and you'll be just fine no matter what you use
First of all, you'll not be able to learn .net or java in several months on a good level. If the new site is a small one (like pet project) - choose any technology you want (I recommend ASP.NET MVC 3 :). If the site has some business value then use the tools you know better - RoR.
As for development environment, you don't need Macs to develop using RoR. Simple PC with Ubuntu or Debian linux will be enough.
As a Mac infrastructure and you already have one functioning site in Rails. Rails should be the only choice. Integration will be a lot harder with the other options. Stick with what is working, unless Rails isn't working for your current web app.
I have a few questions to understand better Java's usage in context of web applications:-
Is Java EE web development suitable for small start-up (with less human resource) looking to develop an web application ?
What kind of difficulties may arise in Java EE web development, deployment & maintenance ?
What kind of things should be kept in mind/ considerations to be made when moving from PHP background to Java ?
Why Java web applications are not so popular today? ( or in case I perceived it wrongly, please list any major deployments beside linkedIn and ebay)
and Finally, What are some of the most important things to learn before starting web development in Java EE ?
Thank you
Generally the answer to the question of "what technology to use" is "the one which you have most experience with". However, Java EE is huge and clunky, and definitely not good for rapid prototyping, which you will be doing if you're doing a startup.
Personally I would recommend a more modern and dynamic environment. If you're coming from PHP, you should be able to pick up Ruby on Rails or Django (Python) easily. These two choices are in my opinion orders of magnitude better than Java EE. If you want to stick with Java, at least go with the Play framework then.
Is Java EE web development suitable for small start-up (with less human resource) looking to develop an web application ?
Yes, I worked in a startup where I was the only full time programmer.
What kind of difficulties may arise in Java EE web development, deployment & maintenance ?
The same as in any other web development shop. Of course, the problems have their Java flavor. For instance, one bug we discovered was caused by different minor version of JDK used on the live system than on our test system.
What kind of things should be kept in mind/ considerations to be made when moving from PHP background to Java ? Do not code the PHP way. Java's strength is OOP and its many libraries/ open source frameworks. Use that.
Why Java web applications are not so popular today? ( or in case I perceived it wrongly, please list any major deployments beside linkedIn and ebay)
I don't know why you think that, but Java is used everywhere. It is one of the few languages that Google officially uses. They use PHP as well, but it has a "lower" status.
and Finally, What are some of the most important things to learn before starting web development in Java EE ? Use Java's strong points which I mentioned above.
Updated after comment
I cannot make the choice for you. If you are in doubt and in a big hurry you should not go with Java. This is common sense. However, it is an opportunity for your team to learn and grow. Maybe there is a PHP/other client for Cassandra. I knew a former PHP programmer in a startup, who switched to Java. Not saying anything bad about PHP programmers in general, but he did all kinds of strange things, such as not leveraging the power of Java web frameworks and writing lots of procedural code mixed with HTML and SQL. Obviously there are lots of Java programmers who would do the same thing. The point is that your team will probably learn new ways to do things and benefit from it in the future.
Allow me to answer these from the perspectives of a developer/architect in a small start-up, experiencing a bunch of these issues.
What kind of difficulties may arise in Java EE web development, deployment & maintenance ?
How do you decide on which toolset/framework to use? Do you need an IDE? Which version control system and why? Do you want to develop at some place and deploy somewhere else, or develop directly on the server? Do you buy a linux box for this, or rent some cloud? How much do they cost, in terms of licenses and training?
What kind of things should be kept in mind/ considerations to be made when moving from PHP background to Java ?
How would your servlet send out an e-mail? It's much simpler in PHP. Need secure transfer of encrypted objects? Java is your friend. What about session tracking? Use cookies, or have a dedicated class do it? How do you access the database? Want to use hibernate? What other tools is hibernate dependent on? What are their costs (license+learning)? Can you use JDBC directly? What are the pros and cons? Which db to use to why.
Why Java web applications are not so popular today? ( or in case I perceived it wrongly, please list any major deployments beside linkedIn and ebay)
I am not sure if this is the case, but possible reasons could be the availability of .net and integration with C# based systems and Apple ditching Java from its SDK. But that is my speculation, don't quote me on it. I am developing a large scale system myself with Java 6.
and Finally, What are some of the most important things to learn before starting web development in Java EE ?
(This is my opinion) have a test or trial set up of the entire architecture. Is the GUI web-brower based? Is it an applet? Standalone application talking to a server? JNLP system downloading archives and JRE off the net? You will find some stuff do not work on Windows 7, some do not on Vista, W3C have deprecated the applet tag from HTML but Sun/Oracle asks you to use it, different browsers do not support contents of your style sheet, etc.
Firewall set up is another major challenge - you start using thread pooling using Spring libraries and your capabilities to use DBvisualizer to check on DB tables are gone! Now you need a DBA and a sys-admin to fix these who you do not have!
Personally I found the LAMP architecture (Linux-Apache-MySQL-PHP) the fastest way to go for smaller applications, but if you need heavier guns for your app (security, GUI with swing, multithreading, etc), replace the P in LAMP with a tomcat container. The hardest thing I find is to judge the value of a tool in the context of my application - I do not need a tool that generates Java files with getter/setter methods given a list of variables - to me that is yet another level of indirection, but then JUnit in eclipse is helpful for debugging.
Just shared some of my thoughts - hope this helps, - M.S.
For a startup an interesting choice could be the Lift web framework, which is used for developing "Java Web Applications" (although in Scala).
What is the equivalent of a Java applet in .NET? Is it Silverlight? Is Java applet still widely in use?
Java applets were "the new hot thing" in 1997, when Java 1.0 came out. After a few years, they became less and less popular, mainly because installing Java on a computer was a big hurdle for many people (you had to download the whole JRE, which was big, it took a long time to install and Java was not that fast at that time - so many people saw it as a slow, bloated thing).
Macromedia Flash (which became Adobe Flash later, ofcourse) had advantages over Java applets in this regard - the plug-in was quick and easy to install, and so it became the dominant thing for interactive multimedia stuff on the web.
Microsoft's Silverlight is meant to be a competitor for Flash and Sun's JavaFX.
JavaFX is Sun's technology that should make it easy to do Flash-like things on the Java virtual machine. If JavaFX becomes a success, then Java applets using JavaFX might become popular again.
Note that earlier this year, Sun released a completely rewritten Java browser plug-in which is quicker and easier to install than the old plug-in. On of the things Sun is working on is making it just as easy to install the Java plug-in as it is to install the Flash plug-in.
Silverlight is analagous to Java applets, but not really equivalent. In my experience, Java applets are being used less and less.
Java applets are seriously out of vogue now - I haven't heard of any new apps using them in years. .NET has silverlight, which is more of a response to Flash than to Java applets.
In this day and age with JQuery and Mootools, MVC architecture, and Chrome's V8 engine, it might actually be better to just write your application in Javascript.
Silverlight.
However, while Silverlight may be the new hotness, Java applets are still a lot more popular... most people have a JVM, but most do not appreciate a massive Silverlight install just to see your web page.
Now, many things that could only be reasonably done in Java or ActiveX are done in plain old JavaScript using new AJAX/DHTML libraries like JQuery and Ext JS. Example: Google Maps. Unless you're doing fancy graphics, try JavaScript first.
From a language perspective, there is a Java-like language available in .NET called J#, which can ease your pain if you are translating Java code to the .NET platform. It doesn't emulate the Java GUI libraries, etc. but at least emulates the syntax.
Silverlight or XBAP. See the FAQ for differences.
Basically XBAP applications work on Windows only and run on the full .NET Framework. Silverlight on the other hand uses different core and set of libraries and is designed to be cross-platform.
Either SilverLight, or an ActiveX control (still in use on some sites). Java applet will work only if a JVM is installed on the client machine.
You'll see applets in use more in enterprises where tight control is maintained over installed Java versions and the browsers i.e. where the execution environment is constrained.
However I'm seeing fewer and fewer applet solutions even in these environments, especially with the rise of RIAs.