I want to create a Web 2.0 application without using JavaScript directly

I am a full Java developer for 4 years, professionally. I'm a GWT fanatic. I love Java. Here's the problem: in my free time, I often fall prey to the verbosity of my favorite tools for "hard" development. I also often fall into the trap of compulsively developing my software. I end up with the finest unfinished implementation.

So, this is what I usually work with.

GWT . I use this for a dynamic interface and web layout. I love the ease of reuse and it taught me to absolutely hate javascript. I really can't even get myself to do HTML / JS anymore.

Hibernation - POJO for the database, simple. What I really need from this other than matching is that it allows me to have an application running on multiple databases.

Spring is mainly security. I wrote my own LDAP bits for a project.

XML I used dom4j and other implementations, including xstreamer. I would like to use JiBX for XML transport. The problem is that I need XML messages that conform to a specific standard, rather than being auto-generated. Object-> XML-> Object is also common enough that this can be a performance bottleneck with large messages (250KB +).

I tried Lombok for a while, and I liked it, but I had occasional problems, and then I blew up the section and lost all this work. I really don't feel like doing the same thing again (half of the fun was how to do it, now that I know ... meh). This taught me why other people want to reduce explicit code and replace it with an implicit system.

I looked at Grails, but this pretty quickly leads me into a JavaScript problem (you know I don't like this). I could use GWT with Grails at the back end, but I am returning to the problem of deepening weeds with GWT. It also occurred to me that there might be a way to have Grails tags in the GSP that consist of GWT widgets. I'm not quite sure how I feel about this.

Another issue with Grails is that the validation logic before submitting the form is separate from the validation constraints after submitting. I do not see how they can be combined (for now) to produce a β€œpretty” check on the front side. I gave up my path to launch a JSR-303-compatible validation project for GWT to help solve this problem for GWT and really liked the Results. It's not over yet, but I still find it useful.

So help me find the best way!

TL DR - I want to have a database (and database independent) for a GUI solution that allows you to dynamically create web programming in one language. Otherwise, as close to one language as possible.

TL DR is TL; DR - I hate JavaScript now, help.

EDIT: I know that it is technically impossible to make "Web 2.0" development without JavaScript. I'm just trying not to be the guy who should write it. (Getting a tool like GWT to do this for me from a language I like, for example.)

+4
source share
10 answers

Just learn JavaScript.

Resistance is futile
... and you will be assimilated.

PD: I am a former enemy of JavaScript. Now this is my favorite language.

+14
source

Of course, you can develop a whole Web 2.0 project without Javascript coding using GWT (we have), but at the end of the day you still need to know HTML / CSS and Javascript.

This may sound like a silly statement, but this is not the case when you think that the GWT is not a perfect abstraction and is not meant to be. It was not written in Java, so you no longer had to write code in Javascript, instead they did it because Java has better IDEs, are statically typed and simplify maintenance.

So yes, you should definitely go with GWT (and check out the new OOPHM, because it's AWESOME), but don't forget that you will always need an understanding of the basic Internet frameworks if you want to develop for the Internet.

+2
source

Have you heard of Echo ?

It does not provide part of the problem database, but it will work well with any database that you can work well with.

Echo is a web application building platform that features rich customers. applications are developed using a component-oriented and event-driven API, eliminating the need for a "page" nature of browsers. To an Echo developer, it works just like a user interface toolkit.

The last iteration, Echo3, features the ability to write applications in either server-side Java or client-side JavaScript. Server applications run in any Java Servlet container and do not require knowledge of the HTML, HTTP, or JavaScript developer.

+1
source

You might want to take a look at some of the AJAX-enabled JSF libraries. IceFaces and RichFaces are durable.

+1
source

Not sure if you want this, but have you heard abour HaXe ? you may not like it, but its AIO solution (all in one) (sort of)

+1
source

Been there, done it. I have been a GWT developer for 3 years ... I started using it in version 1.1! GWT is fantastic and works great for small applications. But development is scanned as soon as you get a moderate application size, even if you split the application in submodules.

It's also pretty ironic that the user interface structure has such limited user interface creation tools. :)

Personally, I bit the bullet and recognized javascript. This is not as bad as I thought. Especially with jQuery . :)

Obviously, there is no perfect structure. But just the fact that GWT has been out for 3.5 years and is still ignored in the Java world has something to tell you. Since you do this in your free time, I would recommend exploring the most popular structure: Struts . You will see its limitation, as well as why it is so popular. Of course you will need jQuery for these 2.0 functions. :)

+1
source

Take a look at JRapid , a rapid development platform for Java developers. It generates a very powerful Ajax-enabled interface without the need for coding.

+1
source

I can understand your dislike of JavaScript, and it certainly has its problems, but I think your fighting character is at the moment.

Web 2.0 is heavily based on JavaScript for a good reason, as it provides the ability to perform tasks on the client machine without the need to load pages.

I am sure there are alternatives, but if you need the look of Web 2.0, you will get much more work with little reward. JavaScript is an accepted and functional tool for working.

0
source

I would say I stick with GWT and just drink more from Koolaid. This is an absolutely stunning development model that seems to be lost to those who have not tried it.

If you want to improve your GWT experience, go to the edge of bloodletting (I work with the trunk, it is quite stable) and use other projects created by Google, such as GIN, gwt-incubator and Guice. Ray Ryan GWT especially watches Google I / O talk best practices: http://www.youtube.com/watch?v=PDuhR18-EdM

As for the "frame": forget it. Just use regular servlets and let GWT take care of the RPC for you. Servlets are a pain when you have to deal with JSPs and you have your own AJAX calls, but when they implement asynchronous application logic, it's not so bad. Guice Servlet makes it all pretty simple. You can still use the JVM hosted language to write your servlets if you want.

GWT has an incredible advantage over other JavaScript frameworks in that the level of abstraction that it provides allows you to get great future advances without any changes to your code. If the scripts of the GWT compiler and browser can take advantage of the new browser features, you can take advantage of a simple recompilation.

The big annoyance that I see in your XML requirements ... I hope that just for integration with a third-party service and your client-server connection, there can only be GWT-RPC.

0
source

I do not use javascript or ajax, in a tool with a large number of applications they create a lot of compatibility problems, because they move part of the code inside the client, create security breaches and problems with another browser.

I use only HTML (5) and CSS2 / CSS3, and I have a lot of success.

I use two methods:

  • using a "techinque puzzle". Write a lot of small and simple templates (or plates) to create a large page. I use only JSTL and Spring tags, with Rich / Prime / Ice-faces. I had a big problem with rendering, page building and stream controller, so I dropped them.

  • using my custom library for parsing HTML pages. I create a template with my own grammar, put it inside the analyzer and write to the output stream. This is the best way.

If you tell me your preferred language and context, I can help you do JS for free.

0
source

All Articles