Home > College, Review, Technology, Web/Internet > Review: Zhtml, the Pain

Review: Zhtml, the Pain

mybook-zhtml

Click to Enlarge

I am writing this because I just finished my extremely long Facebook imitation program that was our required project in my introductory CS curse (this was an accidental misspelling but it seems fitting).  Starting this semester I thought the class would be extremely easy, and it is except for one aspect…the zhtml.  I thought zhtml would be simple, just like HTML, which I learned back in eighth grade, but of course it wasn’t.  Zhtml adds an enterprise version of “Ajax” capability to html (that I am sure not many enterprises use) on a special “zk” server.  It also allows you to call java code from java classes in your folder.  However, a lot of tags are added to zhtml and a lot are also removed from traditional html.  Zhtml does not allow much configuration as well.  Overall, I think zhtml is not a very useful language and creates a lot of frustrations.  They shouldn’t be teaching us a language that has no real world use and has many complications as well. Moreover, it gives 500 server errrors that are very difficult to debug.  Having worked with PHP for years, I am used to a web language giving me at least some indication or line number that causes it to fail, but the zk server gives you a message that sometimes helps such as the one below (which means you need to reset the session because your page is not compatible with older versions of the program you wrote before if you added attributes to a user.)

The zhtml changes standard html syntax.  For example, although technically okay, they make it so that there is no <center> tag.  Also they add a attribute to <div>  called visible.  Though typically in the css this now becomes  a normal attribute in the div tag.  This is useful for making certain areas visible based on a boolean return such as:

<div visible=”@{user.isFriend}”>This user is a friend.</div>

The above example checks that the user is a friend by executing the java method isFriend() in the variable user.  This method of course returns a boolean value.  However, this feature really lacks the ability to evaluate statements since this must return a boolean and cannot check for example that the array size of friends is equal

to 0.  They do include the ability to evauluate an if statement by:

<div if=”${user.friends == 0}”></div>

But this always resulted in another server error.

login

The login "window"

Zhtml adds predefined windows and panels and other graphical eye candy, but the capabilities of each and the amount to which you can customize them is very limited.  By default the windows and panels have their own shade of blue, but this blue stays unless you specifically define css to change the color r create your own images to grace the background of the window.  I have tried my hand at Ajax before, and although I say it is difficult, there is no reason why a premade Ajax simplifier has to make customization s difficult.  If they wanted us to use these windows they should have allowed a much more user friendly way to change the appearance.  A s such, when I decided to create my own layout, of course I had to default to blue so that it would blend with the rest of the  default zhtml widgets.  As one girl who saw my page said, “It’s very blue.”  And indeed it is.

Finally I finished this project on Friday night after several nights staying awake until 4:30 am…and now I am hoping I win the extra credit contest

zhtml-servererror

While doing this project I discovered  many useful resources that enabled me to add features previously un-thought of to my application since our teacher had not given us the resources to utilize the full potential of zhtml.  These include the api to zhtml functions and official style guides.  They are linked below:

Links:

Finally my official application is viewable here (for how ever long it stays up):

And my source code including the zhtml page is here:

  1. December 1st, 2011 at 20:34 | #1

    you are really a good webmaster. The web site loading speed is amazing. It seems that you’re doing any unique trick. Furthermore, The contents are masterwork. you’ve done a excellent job on this topic!

  2. December 2nd, 2011 at 04:52 | #2

    Absolutely pent content material, thank you for information. “He who establishes his argument by noise and command shows that his reason is weak.” by Michel de Montaigne.

  3. December 2nd, 2011 at 04:53 | #3

    Substantially, this publish is really the sweetest on this notable topic. I harmonise together with your conclusions and will thirstily search ahead to your incoming updates. Declaring thanks will not just be ample, for your phenomenal clarity in your writing. I will straight grab your rss feed to stay informed of any updates. Admirable function and significantly good results with your organization dealings!  Please excuse my poor English as it really is not my initial tongue.

  4. December 2nd, 2011 at 06:50 | #4

    Ultimately, a problem that I’m passionate about. I’ve looked for details of this caliber for your final numerous hours. Your site is drastically appreciated.

  5. December 2nd, 2011 at 12:55 | #5

    nice posts and nice site Great post man! Keep it up!

  6. December 2nd, 2011 at 14:30 | #6

    I am only writing to make you be aware of what a awesome discovery my daughter found going through your webblog. She noticed so many details, which include what it’s like to have an amazing giving nature to get certain people with no trouble learn about chosen advanced topics. You truly surpassed our expectations. Thanks for distributing such warm and friendly, trustworthy, edifying and also easy thoughts on your topic to Ethel.

  7. December 3rd, 2011 at 09:36 | #7

    Heya i’m for the 1st time here. I came across this board and I discover It truly useful & it helped me out a lot. I hope to give something back and aid others like you aided me.

  8. December 3rd, 2011 at 13:41 | #8

    I truly appreciate this post. I have been looking all over for this! Thank goodness I found it on Bing. http://peptobismolfordogs.org You’ve made my day! Thx again!

  9. December 3rd, 2011 at 14:21 | #9

    I’ve said that least 1626315 times. The problem this like that is they are just too compilcated for the average bird, if you know what I mean

  10. December 3rd, 2011 at 17:01 | #10

    An impressive share I merely with all this onto a colleague who had previously been doing little analysis about this And that he the truth is bought me

  11. December 3rd, 2011 at 21:39 | #11

    buy this now!!!

  12. December 3rd, 2011 at 22:02 | #12

    We are a group of volunteers and opening a new scheme in our community. Your web site offered us with useful info to work on. You may have performed an impressive job and our entire community will be thankful to you.

  13. December 4th, 2011 at 05:45 | #13

    Just wanna say that this is very helpful , Thanks for taking your time to write this.

  14. December 4th, 2011 at 06:16 | #14

    Thank you for your blog.Really thank you! http://bestalcoholicdrinks.org Fantastic.

  15. December 4th, 2011 at 08:59 | #15

    Your house is valueble for me. Thanks!…

  16. December 4th, 2011 at 10:53 | #16

    A round of applause for your post.Much thanks again. Will read on… http://certifiednursemidwife.org

  17. December 4th, 2011 at 12:17 | #17

    I have to admit that i typically get bored to learn the entire thing however i think you can add some value. Bravo !

  18. December 4th, 2011 at 13:17 | #18

    Thank you for your blog.Really thank you! http://dryiceexperiments.org Fantastic.

  19. December 4th, 2011 at 15:30 | #19

    Definitely one of the challenges which people starting a brand new on-line company face is that of obtaining visitors to their net site.

  20. December 4th, 2011 at 15:36 | #20

    I really appreciate this post. I’ve been looking all over for this! Thank goodness I found it on Bing. You’ve made my day! Thx again

  21. December 4th, 2011 at 16:54 | #21

    It sounds like you’re developing issues yourself by way of attempting to solve this difficulty as an alternative of taking a look at why their is an issue within the first position http://www.theiminsider.com/how-make-a-website

  22. December 4th, 2011 at 18:30 | #22

    I?? have to consult you right here. That is possibly not one thing I usually do! I like studying a publish that could make people think. Also, thanks to get allowing me to provide feedback!

  23. December 4th, 2011 at 20:11 | #23

    the great thing about jennifier connelly is that she still looks hot eventhough she is already a bit old these days ;;

  24. December 4th, 2011 at 20:38 | #24

    Congratulations on possessing actually one in every of one of the vital subtle blogs Ive arrive across in some time! Its simply amazing how a lot you’ll be capable to contemplate away from a factor basically merely because of how visually gorgeous it is. You’ve place collectively an important blog website space –great graphics, movies, layout. That is actually a should-see website!

  25. December 5th, 2011 at 10:11 | #25

    One more thing. I do believe that there are many travel insurance web-sites of reputable companies that let you enter holiday details and have you the quotations. You can also purchase the actual international travel insurance policy on the internet by using your credit card. All that you should do is always to enter your current travel information and you can understand the plans side-by-side. Merely find the package that suits your financial allowance and needs then use your bank credit card to buy that. Travel insurance on the web is a good way to take a look for a respected company for international travel insurance. Thanks for sharing your ideas.

  26. December 5th, 2011 at 14:39 | #26

    Hey good blog!!! Man .. Beautiful .. Incredible .. I am going to bookmark your blog and take the feeds also great article thanks Hi. I desired by way of thanking you for the fantastic information you’ve got posted in your site. I’ll definitelycome to check it out once more and also have subscribedto your Feed. Use a fantastic day.

Comment pages
1 3 4 5 323
  1. November 23rd, 2011 at 10:20 | #1
  2. December 1st, 2011 at 05:46 | #2
  3. December 1st, 2011 at 13:21 | #3
  4. December 1st, 2011 at 14:38 | #4
  5. December 2nd, 2011 at 13:55 | #5
  6. December 3rd, 2011 at 02:29 | #6
  7. December 3rd, 2011 at 13:34 | #7
  8. December 4th, 2011 at 01:06 | #8
  9. December 4th, 2011 at 16:55 | #9
  10. December 4th, 2011 at 22:58 | #10
  11. December 5th, 2011 at 08:26 | #11
  12. December 5th, 2011 at 13:49 | #12