Project 4

Posted in Projects on Ιανουαρίου 7, 2012 by kostasa89

Αναστασίου Κωνσταντίνος 793 (/konanast)

Η εφαρμογή είναι μια υλοποίηση ενός ηλεκτρονικού store για έναν διάσημο κιθαρίστα.Ο χρήστης για να δει ποια προϊόντα είναι διαθέσιμα στο store, πόσο κοστίζουν και να κάνει την αντίστοιχη αγορά πρέπει να κάνει login στο σύστημα.Πιο αναλυτικά:
Έφτιαξα μια login σελίδα όπου ο χρήστης πρέπει να τοποθετήσεις το όνομά του, μια passphrase και το email του.Σε περίπτωση που δεν δωθούν έγκυρα κάποια από τα παραπάνω στοιχεία βγαίνει μήνυμα σε ποιο στοιχείο υπάρχει το λάθος και ζητάεει από τον χρήστη να το ξαναδώσει.Χρησιμοποιούμε ajax σε struts ώστε τα μηνύματα να βγαίνουν στην Login σελίδα.
Χρησιμοποίησα το CalculateValuesAction πάνω στην ίδια λογική που έγινε και το LoginAction για να υπολογίσω τις τιμές των προϊόντων.
Στο ActionForm μπορούμε να δημιουργήσουμε τα cookies για κάθε ενέργειά μας.Άρα στο loginAction θα κρατήσουμε το όνομα και το mail του χρήστη και στο calculate values κρατήσουμε το τελικό ποσό που δαπάνησε ο χρήστης ώστε να τον ενημερώσουμε την επόμενη φορά που θα ξαναμπεί για να αγοράσει κάτι.
Η ενασχόληση με το struts framework μου φάνηκε ενδιαφέρον αλλά για να το μάθεις να το χρησιμοποιείς ικανοποιητικά χρειάζεται αρκετό χρόνο.
Το πρόβλημα που αντιμετώπισα κυρίως ήταν να καταλάβω πως δουλεύει όλο το μοντέλο MVC.Οι πηγές μου ήταν τα Link που δώθηκαν στο μάθημα, το Roseindia, Stackoverflow και το Javaranch.Στο Roseindia βρήκα αρκετές εφαρμογές υλοποιημένες πάνω σε Struts.Επίσης σε αυτό το blog το οποίο παρακολουθώ έχουν αρχίσει να δημοσιεύονται αναρτήσεις πάνω σε struts framework αρκετά αναλυτικές.(έπεσε την ίδια περίοδο υλοποίησης με το δικό μας project).
Τον κώδικά μου μπορείτε να τον κατεβάσετε από εδώ:http://www.box.com/s/u6gkxyfibsiqpg847fkj
και να τον βρείτε στo github:https://github.com/KostasA/Struts_Project/tree/master/MyStrutsApp

Advertisements

Custom Tags

Posted in Αταξινόμητα on Δεκέμβριος 25, 2011 by kostasa89

According to TLD or attribute directive in tag file … [solution]

JSTL tutorial

Project 3

Posted in Projects on Δεκέμβριος 14, 2011 by kostasa89

Αναστασίου Κωνσταντίνος 793

e-Shopping Cart

Εφαρμογή online: click

1ο μέρος εργασίας
Δημιουργία ηλεκτρονικής κάρτας αγορών(με scriptlet).Έχω ένα .jsp αρχείο(index) όπου προβάλει σε μορφή html έναν πίνακα με διάφορα προϊόντα και τις αντίστοιχες τιμές πώλησης.Το αρχείο δίνει την δυνατότητα στον χρήστη να εισάγει την ποσότητα που θέλει να αγοράσει από το κάθε προϊόν.Όταν ο χρήστης τοποθετήσει τις αντίστοιχες ποσότητες πατάει το submit button και τα δεδομένα στέλνονται στο αρχείο TestBean.jsp .Το αρχείο αυτό δέχεται τις παραμέτρους και υπολογίζει την τελική τιμή του κάθε προϊόντος, αλλά και την τελική τιμή της αγοράς.Επίσης δημιουργεί για κάθε προϊόν τα αντίστοιχα cookies που έχουν οριστεί να έχουν χρονική διάρκεια (60*60*60*60)seconds ώστε ο χρήστης μόλις επιχειρήσει να ξανακάνει αγορά να του εμφανίζει το ποσό που ξοδεψε για κάθε προϊόν την προηγούμενη φορά.Τα αποτελέσματα εμφανίζονται στην αρχική σελίδα που βλέπει ο χρήστης (index) και αυτό το υλοποίησα χρησιμοποιώντας την γλώσσα ajax().Επίσης έχω δημιουργήσει τρεις(3) κλάσεις,όσες και τα προϊόντα, η καθεμία από τις οποίες έχει δύο μεθόδους την setProductqua η οποία θέτει σε μια μεταβλητή την ποσότητα που αγόρασε ο χρήστης από το αντίστοιχο προϊόν και την getProductqua όπου επιστρέφει την αντίστοιχη ποσότητα ππου αγόρασε ο χρήστης από το προϊόν.Οι μέθοδοι αυτοί μας βοηθάνε στους υπολογισμούς που γίνονται στο TestBean.jsp.

2ο μέρος εργασίας
Στο δεύτερο μέρος της εργασίας χρησιμοποίησα την ίδια δομή με το πρώτο μέρος μόνο που δεν χρησιμοποίησα script language, αλλά συνδυασμό JavaBean και EL(Expression Language).Έχω δημιουργήσει τρεις κλάσεις για καθένα από τα προϊόντα μου και δύο μεθόδους setter and getter όπου το bean θα παίρνει τις αντίστοιχες ποσότητες που έχει εισάγει ο χρήστης και θα υπολογίζει το κόστος της αγοράς σύμφωνα με την τιμή που έχει κάθε προϊόν.(Οι τιμές υπάρχουν μέσα στο web.xml)Οι τιμές εμφανίζονται στον χρήστη στην αρχική σελίδα και αυτό το έκανα με χρήση της ajax(scripting language).Το πρόβλημα που αντιμετώπισα ήταν ότι δεν βρήκα τρόπο να δημιουργήσω τα cookies χωρίς scriptlet(EDIT:είναι λάθος αλλά για καλύτερη εμφάνιση της εφαρμογής δημιούργησα τα cookies με scriptlet). Στην εργασία δεν χρησιμοποίησα κανένα servlet.

Και για τις δύο υλοποιήσεις χρησιμοποίησα την βοήθεια του βιβλίου!

Κώδικας στο GitHub
Part A:(e-Shopping Cart with Scriptlets) https://github.com/KostasA/e-Shopping-cart-with-scriptlets
Part B:(e-Shopping Cart without Scriptlets) https://github.com/KostasA/e-Shopping-cart

Download Code:
http://www.box.com/s/8g5sc3p0bkz7ystkcmxq

Currency Converter Plus info

Posted in Αταξινόμητα on Νοέμβριος 19, 2011 by kostasa89

Αναστασίου Κωνσταντίνος 793

Η εφαρμογή είναι μια επέκταση του currency converter που κάναμε στο προηγούμενο project.Χρησιμοποιούμε δυναμικές ισοτιμίες. Έχουν προσθεθεί τρία επιπλέον κουμπιά, ένα το οποίο μας δείχνει πληροφορίες για την εφαρμογή, το δεύτερο μας επιτρέπει να κατεβάσουμε τον πηγαίο κώδικα της εφαρμογής και να το τρέξουμε στον δικό μας container και το τρίτο είναι το swap.

Έφτιαξα δύο ServletContextListener σε δύο διαφορετικά πακέτα τα οποία πέρνουν τις δύο παραμέτρους(link) από τον DD δημιουργούν ένα object και το θέτουν τα link ως attribute.Μετά έφτιαξα και άλλα δύο servlet τα οποία πέρνουν το attribute(το link) του αντίστοιχου(στο ίδιο πακέτο) listener και μας κάνουν redirect.

Στο interface μου(.html) έχω ορίσει για κάθε κουμπί(input) η φόρμα να στέλνει τα αντίστοιχα request σε διαφορετικά servlet.Το servlet Checkbox που κάνει τις μετατροπές των νομισμάτων είναι το ίδιο με την προηγούμενη υλοποίηση.

Πρόβλημα αντιμετώπισα όταν προσπάθησα να βάλω πολλαπλά servlet στον DD.Με τον χωρισμό των servlet σε πακέτα όλα δούλευαν καλά και δεν χρειαζόταν να χρησιμοποιώ διαφορετικά ονόματα μιας και ο διαχωρισμός γινόταν από τα πακέτα.

Έφτιαξα και το αποτέλεσμα να εμφανίζεται στην ίδια σελίδα που ο χρήστης δίνει το amount,χρησιμοποιώντας AJAX.
Μου πήρε ώρες και άρκετό ψάξιμο στο web.Πληροφορίες πήρα από εδώ .

Στο .html αρχείο έφτιαξα ένα tooltip ώστε μόλις ο χρήστης πηγαίνει το ποντίκι του πάνω από ένα κουμπί να παίρνει παραπάνω πληροφορίες.

Πατώντας το κουμπί code μπορεί ο χρήστης να κατεβάσει όλο τον κώδικα της εφαρμογής(από το box.net) και να τον χρησιμοποιήσει άμεσα στον δικό του container.Θα κατεβάσει το αρχείο listenerTest.tar.bz2 και κάνωντάς το unzip στον container και συγκεκριμένα κάτω από τον φάκελο /webapps.

Στο αρχείο tar.bz2 υπάρχει μέσα και ο DD και όλα τα πακέτα οπότε ο χρήστης δεν θα χρειαστείνα πειράξει τίποτε στον container του.Πληροφορίες για την υλοποίηση των listeners πήρα από το βιβλίο.

O κώδικάς μου στο Github βρίσκεται στο παρακάτω link(υπάρχει και το αρχείο README που πρέπει να διαβαστεί πρώτα): https://github.com/KostasA/Currency-Converter-plus

Η εφαρμογή βρίσκεται on-line στο παρακάτω link:
http://kostasa89.dyndns.org:8080/listenerTest/converter_plus.html

Creating tooltips

Posted in HTML on Νοέμβριος 13, 2011 by kostasa89

javascriptkit.com

IE Netrenderer

Posted in Αταξινόμητα on Νοέμβριος 7, 2011 by kostasa89

click

GitHub – social coding

Posted in Αταξινόμητα on Οκτώβριος 31, 2011 by kostasa89


GitHub

  • Register to github
  • Create new repository
  • Set as you own project name
    Project name: Example
    Description: Hello Git
  • The next page that is displayed to you, shows the commands you have to type in a terminal
  • The click continue
  • You’ll see this page
  • Make a ‘second commit
    -Change the README file(I typed in ‘I’ll change this file!’)
    -Type the following commands in a terminal
    $git add README
    $git commit -m ‘second commit’
    $git push -u origin master
  • Reload the previous page. See the differences!
  • You can see all commits.See how: