Re: Code-Behind

2007-10-27 Tema obsahu Tomas Studva
Suhlasim s Pertrom. Je vsak dalsi pohlad na vec a to vykon(pamat, cpu, 
up/down strem) klienta. Ak ho spravne vyuzijeme mozeme obsluzit viac 
klientov alebo s rychlejsou odozvou. Vid 
http://www.tibco.com/devnet/resources/gi/3_5/doc/html/wwhelp/wwhimpl/js/html/wwhelp.htm?href=tib_gi_getting_started/gs.4.4.htm 
.


A ria mozu su ciastocne adresovatelne, resp. mohli by byt aj uplne 
adresovatelne. U GWT sa to vola history management vid: 
http://gwt.google.com/samples/KitchenSink/KitchenSink.html


Petr Gola  wrote / napísal(a):

Článek jsem nečetl, reaguji jen na poslední příspěvěk.

Ano, plně adresovatelný web je výhodou. Já jsem jednoznačně jeho
příznivcem. Ale osobně se domnívám, že boom aplikací v prohlížeči je v
jejich přístupnosti, okamžité použitelnosti. Internetový prohlížeč
tvoří jakousi jednotnou platformu (v rámci možností). Není třeba nic
instalovat, některé prohlížeče navíc běží pod všemi operačními systémy
:) ...

On 26/10/2007, Martin Kuba [EMAIL PROTECTED] wrote:
  

Jozef Babjak wrote:


Velmi odporucam vsetkym, co sa aktivne zapojili do tohto
threadu (a aj vsetkym inym, samozrejme) toto:

http://www.theserverside.com/news/thread.tss?thread_id=47213
  

Přečetl jsem si ten článek celý, a ačkoliv jejich analýza je celkem
přesná a zvlášť historický exkurz Microsoft versus lidstvo
je zcela trefný, s jejich závěry nesouhlasím.

V podstatě doporučují návrat od ultra-thin HTML klientů
k rich klientům, nebo jinými slovy od HTML dokumentů
zpět k aplikacím běžícím na klientech.

Jenomže to IMHO povede k jedné věci, kterou brutálně demonstrují
aplikace typu http://www.tipcars.cz/ - web přestane být adresovatelný.
Už nepůjde někomu poslat URL na položku ze seznamu, která se mi líbí,
protože žádné URL už mít nebude. Už to bude jenom
určitý client-side stav v aplikaci, který nemá adresu a je nepřenosný.

Můj skromný názor je, že pokud by měli pravdu, tak by
si lidé místo prohlížení webových stránek stahovali a pouštěli
aplikace pro MS-Windows, protože ty má stejně 99% lidí
před sebou. Jenže existují dva druhy aplikací. V jedněch
opravdu nepotřebuji mít možnost si poznamenat stav - například
čtení pošty přes GMail. A pak jsou aplikace, kdy bych si nějaký
stav uložit chtěl, třeba právě na tipcars.cz bych si moc chtěl
uložit odkaz na konkrétní auto, ale nemůžu, když je to aplikace
a ne HTML dokument. Takže rich klienti se hodí jen pro první
druh aplikací, pro druhý typ ne.


Makub
--
~~
Supercomputing Center Brno Martin Kuba
Institute of Computer Scienceemail: [EMAIL PROTECTED]
Masaryk University http://www.ics.muni.cz/~makub/
Botanicka 68a, 60200 Brno, CZ mobil: +420-603-533775
--








Re: Code-Behind

2007-10-26 Tema obsahu Petr Synek
Jo s tou dvoji deklaraci mas pravdu. Jednou je to v ASPX a jednou v 
parcialni tride generovane automaticky IDE.


Mne jinak nevadi ze pouzivam get() set(), vadi mi jen ze ty get() set() 
musim zbytecne psat do beany, ktera navic musi implementovat cosi (takze 
spousta zbytecne prace). Kdyz ve Swingu pouziju textfield, tak taky 
nemusim dopisovat nejake metody abych vytahl z koponenty jeji hodnotu. 
Swing komponenta vsechny metody pro praci s ni uz ma v sobe. Podobne 
bych rad pracoval v Jave i na webu. Rozhodne by to znamenalo psani mene 
kodu a pro lidi zvykly delat se Swingem a s objekty obecne rychlejsi 
ucici krivku.


Petr


Martin Kuba wrote:

Petr Synek wrote:
To je asi jako bych ve Swingu nekam umistil JTextField a jeste musel vytvorit POJO tridu s getText() a setText() metodama jen kvuli tomu abych mohl z toho textfieldu ziskat text. 
A navic bych jeste musel v konstruktoru rict ze ten JTextField ma ID napr. Calculator a tu POJO tridu musel pojmenovat CalculatorActionBean a implementovat nejaky interface. Tedy zrovna intuitivni mi takovyto programatorsky styl neprijde. 



Od intuitivniho web frameworku bych cekal ze s komponentou numberOne budu 
rovnou v Jave (v code behind) pracovat takto:
String text = numberOne.getText();
numberOne.setText(Franta)

Pricemz o deklaraci promene numberOne se uz nestaram, protoze ta uz byla jednou deklarovana v JSP (neboli don't repeat yourself). 


Jak se koukam na code-behind na http://support.microsoft.com/kb/303247
tak ten TextBox je tam taky definovany dvakrat, jednou
v ASPX:

 asp:textbox id=MyTextBox text=Hello World runat=server/asp:textbox

a podruhe ve tride:

 protected System.Web.UI.WebControls.TextBox MyTextBox;

Jestli .NET pristupuje k protected promennym primo, bez
setXXX() a getXXX() metod, tak je to strucnejsi, ale
porusuje to ruzne zasady, ktere nam SUN vtlouka do hlavy.

Nevidim vyhodu toho, kdyz musim objekt nadeklarovat
a pak na nem volat metodu:

protected System.Web.UI.WebControls.TextBox MyTextBox;

public void MyButton_Click(Object sender, EventArgs e){
MyLabel.Text = MyTextBox.Text.ToString();
}

oproti tomu, kdyz nadefinuju rovnou hodnotu:

private String text;

public Resolution click() {
label = text;
text = Franta;
...
}

Ale jestli to moc potrebujete, staci udelat toto:

public class Neco implements ActionBean{
...
public static class TextBox {
   private String text;
   public String getText() { return text; }
   public void setText(String s) { text = s;}
}

private TextBox textBox =  new TextBox();
public TextBox getTextBox() { return textBox; }

public Resolution click() {
  String text = textBox.getText();
  textBox.setText(Franta);
}

a v JSP udelat

  s:text name=textBox.text /

Tot vse.

Makub



Re: Code-Behind

2007-10-26 Tema obsahu Petr Synek
Mate pravdu ze backing bean muze slouzit pro vice komponent. Ale stale 
to znamena ze musite backing bean napsat.


Ve Swingu se nepouziva backing bean. Tam komponenty maji model tridu 
implicitne v sobe. Napr. text komponenty maji model reprezentovany 
tridou Document, ta uz ve Swingu je a vytvori se automaticky spolu s 
komponentou, ale pokud chcete muzete si dodat i Document svuj.

Rozhodne ale model neni sdileny vice komponentami, tak jako v JSF.

Petr

Josef Petrák - KYBERIE wrote:

Když si porovnáte Swing a JSF, tak jsou na tom stejně, třeba JLabel [JLabel]
vs. UIOutput [UIOutput], to jsou ekvivalentní komponenty, definující
gettery/settery pro své atributy. Backing Bean, do které vpisujete
getttery/settery reprezentuje nějaký logický celek rozhraní, nikoliv jedinou
komponentu. To není to samé, ne?

Ani nevím, jestli něco, jako Backing Bean se používá ve Swingu?

[JLabel] http://java.sun.com/j2se/1.4.2/docs/api/javax/swing/JLabel.html
[UIOutput]
http://java.sun.com/javaee/javaserverfaces/1.1/docs/api/javax/faces/componen
t/UIOutput.html

S pozdravem


Josef Petrák, Java vývojář
---
FOAF:http://jspetrak.zapisky.info/profile.rdf
E-mail:  [EMAIL PROTECTED]
Jabber:  [EMAIL PROTECTED]
Mobil:   +420603254189
ICQ: 179271149
---
KYBERIE
Web: http://www.kyberie.cz
Tel: +420226002016

-Original Message-
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On
Behalf Of Petr Synek
Sent: Friday, October 26, 2007 11:29 AM
To: Java
Subject: Re: Code-Behind

Jo s tou dvoji deklaraci mas pravdu. Jednou je to v ASPX a jednou v 
parcialni tride generovane automaticky IDE.


Mne jinak nevadi ze pouzivam get() set(), vadi mi jen ze ty get() set() 
musim zbytecne psat do beany, ktera navic musi implementovat cosi (takze 
spousta zbytecne prace). Kdyz ve Swingu pouziju textfield, tak taky 
nemusim dopisovat nejake metody abych vytahl z koponenty jeji hodnotu. 
Swing komponenta vsechny metody pro praci s ni uz ma v sobe. Podobne 
bych rad pracoval v Jave i na webu. Rozhodne by to znamenalo psani mene 
kodu a pro lidi zvykly delat se Swingem a s objekty obecne rychlejsi 
ucici krivku.


Petr


Martin Kuba wrote:

Petr Synek wrote:

To je asi jako bych ve Swingu nekam umistil JTextField a jeste musel

vytvorit POJO tridu s getText() a setText() metodama jen kvuli tomu abych
mohl z toho textfieldu ziskat text. 

A navic bych jeste musel v konstruktoru rict ze ten JTextField ma ID

napr. Calculator a tu POJO tridu musel pojmenovat CalculatorActionBean a
implementovat nejaky interface. Tedy zrovna intuitivni mi takovyto
programatorsky styl neprijde. 


Od intuitivniho web frameworku bych cekal ze s komponentou numberOne

budu rovnou v Jave (v code behind) pracovat takto:

String text = numberOne.getText();
numberOne.setText(Franta)

Pricemz o deklaraci promene numberOne se uz nestaram, protoze ta uz byla
jednou deklarovana v JSP (neboli don't repeat yourself). 

Jak se koukam na code-behind na http://support.microsoft.com/kb/303247
tak ten TextBox je tam taky definovany dvakrat, jednou
v ASPX:

 asp:textbox id=MyTextBox text=Hello World

runat=server/asp:textbox

a podruhe ve tride:

 protected System.Web.UI.WebControls.TextBox MyTextBox;

Jestli .NET pristupuje k protected promennym primo, bez
setXXX() a getXXX() metod, tak je to strucnejsi, ale
porusuje to ruzne zasady, ktere nam SUN vtlouka do hlavy.

Nevidim vyhodu toho, kdyz musim objekt nadeklarovat
a pak na nem volat metodu:

protected System.Web.UI.WebControls.TextBox MyTextBox;

public void MyButton_Click(Object sender, EventArgs e){
MyLabel.Text = MyTextBox.Text.ToString();
}

oproti tomu, kdyz nadefinuju rovnou hodnotu:

private String text;

public Resolution click() {
label = text;
text = Franta;
...
}

Ale jestli to moc potrebujete, staci udelat toto:

public class Neco implements ActionBean{
...
public static class TextBox {
   private String text;
   public String getText() { return text; }
   public void setText(String s) { text = s;}
}

private TextBox textBox =  new TextBox();
public TextBox getTextBox() { return textBox; }

public Resolution click() {
  String text = textBox.getText();
  textBox.setText(Franta);
}

a v JSP udelat

  s:text name=textBox.text /

Tot vse.

Makub




__ Informace od NOD32 2618 (20071026) __

Tato zprava byla proverena antivirovym systemem NOD32.
http://www.nod32.cz






RE: Code-Behind

2007-10-26 Tema obsahu Josef Petrák - KYBERIE
Když si porovnáte Swing a JSF, tak jsou na tom stejně, třeba JLabel [JLabel]
vs. UIOutput [UIOutput], to jsou ekvivalentní komponenty, definující
gettery/settery pro své atributy. Backing Bean, do které vpisujete
getttery/settery reprezentuje nějaký logický celek rozhraní, nikoliv jedinou
komponentu. To není to samé, ne?

Ani nevím, jestli něco, jako Backing Bean se používá ve Swingu?

[JLabel] http://java.sun.com/j2se/1.4.2/docs/api/javax/swing/JLabel.html
[UIOutput]
http://java.sun.com/javaee/javaserverfaces/1.1/docs/api/javax/faces/componen
t/UIOutput.html

S pozdravem


Josef Petrák, Java vývojář
---
FOAF:http://jspetrak.zapisky.info/profile.rdf
E-mail:  [EMAIL PROTECTED]
Jabber:  [EMAIL PROTECTED]
Mobil:   +420603254189
ICQ: 179271149
---
KYBERIE
Web: http://www.kyberie.cz
Tel: +420226002016

-Original Message-
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On
Behalf Of Petr Synek
Sent: Friday, October 26, 2007 11:29 AM
To: Java
Subject: Re: Code-Behind

Jo s tou dvoji deklaraci mas pravdu. Jednou je to v ASPX a jednou v 
parcialni tride generovane automaticky IDE.

Mne jinak nevadi ze pouzivam get() set(), vadi mi jen ze ty get() set() 
musim zbytecne psat do beany, ktera navic musi implementovat cosi (takze 
spousta zbytecne prace). Kdyz ve Swingu pouziju textfield, tak taky 
nemusim dopisovat nejake metody abych vytahl z koponenty jeji hodnotu. 
Swing komponenta vsechny metody pro praci s ni uz ma v sobe. Podobne 
bych rad pracoval v Jave i na webu. Rozhodne by to znamenalo psani mene 
kodu a pro lidi zvykly delat se Swingem a s objekty obecne rychlejsi 
ucici krivku.

Petr


Martin Kuba wrote:
 Petr Synek wrote:
 To je asi jako bych ve Swingu nekam umistil JTextField a jeste musel
vytvorit POJO tridu s getText() a setText() metodama jen kvuli tomu abych
mohl z toho textfieldu ziskat text. 
 A navic bych jeste musel v konstruktoru rict ze ten JTextField ma ID
napr. Calculator a tu POJO tridu musel pojmenovat CalculatorActionBean a
implementovat nejaky interface. Tedy zrovna intuitivni mi takovyto
programatorsky styl neprijde. 


 Od intuitivniho web frameworku bych cekal ze s komponentou numberOne
budu rovnou v Jave (v code behind) pracovat takto:
 String text = numberOne.getText();
 numberOne.setText(Franta)

 Pricemz o deklaraci promene numberOne se uz nestaram, protoze ta uz byla
jednou deklarovana v JSP (neboli don't repeat yourself). 
 
 Jak se koukam na code-behind na http://support.microsoft.com/kb/303247
 tak ten TextBox je tam taky definovany dvakrat, jednou
 v ASPX:
 
  asp:textbox id=MyTextBox text=Hello World
runat=server/asp:textbox
 
 a podruhe ve tride:
 
  protected System.Web.UI.WebControls.TextBox MyTextBox;
 
 Jestli .NET pristupuje k protected promennym primo, bez
 setXXX() a getXXX() metod, tak je to strucnejsi, ale
 porusuje to ruzne zasady, ktere nam SUN vtlouka do hlavy.
 
 Nevidim vyhodu toho, kdyz musim objekt nadeklarovat
 a pak na nem volat metodu:
 
 protected System.Web.UI.WebControls.TextBox MyTextBox;
 
 public void MyButton_Click(Object sender, EventArgs e){
 MyLabel.Text = MyTextBox.Text.ToString();
 }
 
 oproti tomu, kdyz nadefinuju rovnou hodnotu:
 
 private String text;
 
 public Resolution click() {
 label = text;
 text = Franta;
 ...
 }
 
 Ale jestli to moc potrebujete, staci udelat toto:
 
 public class Neco implements ActionBean{
 ...
 public static class TextBox {
private String text;
public String getText() { return text; }
public void setText(String s) { text = s;}
 }
 
 private TextBox textBox =  new TextBox();
 public TextBox getTextBox() { return textBox; }
 
 public Resolution click() {
   String text = textBox.getText();
   textBox.setText(Franta);
 }
 
 a v JSP udelat
 
   s:text name=textBox.text /
 
 Tot vse.
 
 Makub
 


__ Informace od NOD32 2618 (20071026) __

Tato zprava byla proverena antivirovym systemem NOD32.
http://www.nod32.cz




Re: Code-Behind

2007-10-26 Tema obsahu Jozef Babjak
Velmi odporucam vsetkym, co sa aktivne zapojili do tohto
threadu (a aj vsetkym inym, samozrejme) toto:

http://www.theserverside.com/news/thread.tss?thread_id=47213


Re: Code-Behind

2007-10-26 Tema obsahu Martin Kuba
Jozef Babjak wrote:
 Velmi odporucam vsetkym, co sa aktivne zapojili do tohto
 threadu (a aj vsetkym inym, samozrejme) toto:
 
 http://www.theserverside.com/news/thread.tss?thread_id=47213

Přečetl jsem si ten článek celý, a ačkoliv jejich analýza je celkem
přesná a zvlášť historický exkurz Microsoft versus lidstvo
je zcela trefný, s jejich závěry nesouhlasím.

V podstatě doporučují návrat od ultra-thin HTML klientů
k rich klientům, nebo jinými slovy od HTML dokumentů
zpět k aplikacím běžícím na klientech.

Jenomže to IMHO povede k jedné věci, kterou brutálně demonstrují
aplikace typu http://www.tipcars.cz/ - web přestane být adresovatelný.
Už nepůjde někomu poslat URL na položku ze seznamu, která se mi líbí,
protože žádné URL už mít nebude. Už to bude jenom
určitý client-side stav v aplikaci, který nemá adresu a je nepřenosný.

Můj skromný názor je, že pokud by měli pravdu, tak by
si lidé místo prohlížení webových stránek stahovali a pouštěli
aplikace pro MS-Windows, protože ty má stejně 99% lidí
před sebou. Jenže existují dva druhy aplikací. V jedněch
opravdu nepotřebuji mít možnost si poznamenat stav - například
čtení pošty přes GMail. A pak jsou aplikace, kdy bych si nějaký
stav uložit chtěl, třeba právě na tipcars.cz bych si moc chtěl
uložit odkaz na konkrétní auto, ale nemůžu, když je to aplikace
a ne HTML dokument. Takže rich klienti se hodí jen pro první
druh aplikací, pro druhý typ ne.


Makub
-- 
~~
Supercomputing Center Brno Martin Kuba
Institute of Computer Scienceemail: [EMAIL PROTECTED]
Masaryk University http://www.ics.muni.cz/~makub/
Botanicka 68a, 60200 Brno, CZ mobil: +420-603-533775
--



smime.p7s
Description: S/MIME Cryptographic Signature


Re: Code-Behind

2007-10-26 Tema obsahu Petr Gola
Článek jsem nečetl, reaguji jen na poslední příspěvěk.

Ano, plně adresovatelný web je výhodou. Já jsem jednoznačně jeho
příznivcem. Ale osobně se domnívám, že boom aplikací v prohlížeči je v
jejich přístupnosti, okamžité použitelnosti. Internetový prohlížeč
tvoří jakousi jednotnou platformu (v rámci možností). Není třeba nic
instalovat, některé prohlížeče navíc běží pod všemi operačními systémy
:) ...

On 26/10/2007, Martin Kuba [EMAIL PROTECTED] wrote:
 Jozef Babjak wrote:
  Velmi odporucam vsetkym, co sa aktivne zapojili do tohto
  threadu (a aj vsetkym inym, samozrejme) toto:
 
  http://www.theserverside.com/news/thread.tss?thread_id=47213

 Přečetl jsem si ten článek celý, a ačkoliv jejich analýza je celkem
 přesná a zvlášť historický exkurz Microsoft versus lidstvo
 je zcela trefný, s jejich závěry nesouhlasím.

 V podstatě doporučují návrat od ultra-thin HTML klientů
 k rich klientům, nebo jinými slovy od HTML dokumentů
 zpět k aplikacím běžícím na klientech.

 Jenomže to IMHO povede k jedné věci, kterou brutálně demonstrují
 aplikace typu http://www.tipcars.cz/ - web přestane být adresovatelný.
 Už nepůjde někomu poslat URL na položku ze seznamu, která se mi líbí,
 protože žádné URL už mít nebude. Už to bude jenom
 určitý client-side stav v aplikaci, který nemá adresu a je nepřenosný.

 Můj skromný názor je, že pokud by měli pravdu, tak by
 si lidé místo prohlížení webových stránek stahovali a pouštěli
 aplikace pro MS-Windows, protože ty má stejně 99% lidí
 před sebou. Jenže existují dva druhy aplikací. V jedněch
 opravdu nepotřebuji mít možnost si poznamenat stav - například
 čtení pošty přes GMail. A pak jsou aplikace, kdy bych si nějaký
 stav uložit chtěl, třeba právě na tipcars.cz bych si moc chtěl
 uložit odkaz na konkrétní auto, ale nemůžu, když je to aplikace
 a ne HTML dokument. Takže rich klienti se hodí jen pro první
 druh aplikací, pro druhý typ ne.


 Makub
 --
 ~~
 Supercomputing Center Brno Martin Kuba
 Institute of Computer Scienceemail: [EMAIL PROTECTED]
 Masaryk University http://www.ics.muni.cz/~makub/
 Botanicka 68a, 60200 Brno, CZ mobil: +420-603-533775
 --





Code-Behind

2007-10-25 Tema obsahu Ing. Vladislav Korecký

Dobrý den,

Jsem programátor C# a ve svém volném čase si rozšiřuji obzory a učím se 
Java.
Nedávno jsem zkoušel napsat web aplikace a trochu mi chybělo rozdělění 
code od HTML.

A teď k mé otázce:
Existuje možnost psát JSP stránky v režimu Code-Behind ?

Když jsem se koukal na videa NetBeans 6 beta 1, tak se mi zdálo že tam 
něco jako code-behind je, ale nejsem si jist.



Předem děkuji za odpověď,
Korecký



Re: Code-Behind

2007-10-25 Tema obsahu Roman Pichlik
Nevim jestli si predstavujete pod pojmem Code-Behind to same co ja, 
kazdopadne:


- vetsina web frameworku je striktne MVC
- JSF + Facelets|Clay, Tapestry, Wicket umoznuji psat stare dobre HTML a 
pres specialni binding (atribut HTML elementu) napojit jednotlive 
komponenty na jejich serverove protejsky



Ing. Vladislav Korecký napsal(a):

Dobrý den,

Jsem programátor C# a ve svém volném čase si rozšiřuji obzory a učím se 
Java.
Nedávno jsem zkoušel napsat web aplikace a trochu mi chybělo rozdělění 
code od HTML.

A teď k mé otázce:
Existuje možnost psát JSP stránky v režimu Code-Behind ?

Když jsem se koukal na videa NetBeans 6 beta 1, tak se mi zdálo že tam 
něco jako code-behind je, ale nejsem si jist.



Předem děkuji za odpověď,
Korecký





--
S pozdravem Roman Dagi Pichlik

/* http://www.sweb.cz/pichlik/ Blog pro kodery */


Re: Code-Behind

2007-10-25 Tema obsahu Ing. Vladislav Korecký

V C# je situace následující :
Každá aspx stránka má 3 soubory:
   jmeno.aspx - layout stránky, serverovy prvek (komponenta) je 
reprezentovana spec. HTML elementem např: cc1:mujKontrol ... /
   jmeno.design.cs - design generated code, kod generovany designerem 
(VS2005) Jsou zde deklarace objektu použitých v aspx stránce.

   jmeno.cs - samotný C# code dané stránky (metody, property, atd ... )

Pak je striktně oddělen layout od samotného kodu. A uvítal bych tuto 
možnost i v Java, dle vaší odpovědi soudím, že to tam jde a že je to ta 
druhá možnost. Je to tak ?


Doufám že jsem to popsal srozumitelně.
Korecký


Roman Pichlik wrote:
Nevim jestli si predstavujete pod pojmem Code-Behind to same co ja, 
kazdopadne:


- vetsina web frameworku je striktne MVC
- JSF + Facelets|Clay, Tapestry, Wicket umoznuji psat stare dobre HTML 
a pres specialni binding (atribut HTML elementu) napojit jednotlive 
komponenty na jejich serverove protejsky



Ing. Vladislav Korecký napsal(a):

Dobrý den,

Jsem programátor C# a ve svém volném čase si rozšiřuji obzory a učím 
se Java.
Nedávno jsem zkoušel napsat web aplikace a trochu mi chybělo 
rozdělění code od HTML.

A teď k mé otázce:
Existuje možnost psát JSP stránky v režimu Code-Behind ?

Když jsem se koukal na videa NetBeans 6 beta 1, tak se mi zdálo že 
tam něco jako code-behind je, ale nejsem si jist.



Předem děkuji za odpověď,
Korecký









Re: Code-Behind

2007-10-25 Tema obsahu Jiri Mares

Ahoj,

ona je to i ta prvni moznost :-)) protoze vsechny frameworky vypsane v druhem 
bode pouzivaji MVC jako navrhovy vzor.

Jirka

Ing. Vladislav Korecký napsal(a):
 
 V C# je situace následující :
 Každá aspx stránka má 3 soubory:
jmeno.aspx - layout stránky, serverovy prvek (komponenta) je
 reprezentovana spec. HTML elementem např: cc1:mujKontrol ... /
jmeno.design.cs - design generated code, kod generovany designerem
 (VS2005) Jsou zde deklarace objektu použitých v aspx stránce.
jmeno.cs - samotný C# code dané stránky (metody, property, atd ... )
 
 Pak je striktně oddělen layout od samotného kodu. A uvítal bych tuto
 možnost i v Java, dle vaší odpovědi soudím, že to tam jde a že je to ta
 druhá možnost. Je to tak ?
 
 Doufám že jsem to popsal srozumitelně.
 Korecký
 
 
 Roman Pichlik wrote:
 Nevim jestli si predstavujete pod pojmem Code-Behind to same co ja,
 kazdopadne:

 - vetsina web frameworku je striktne MVC
 - JSF + Facelets|Clay, Tapestry, Wicket umoznuji psat stare dobre HTML
 a pres specialni binding (atribut HTML elementu) napojit jednotlive
 komponenty na jejich serverove protejsky


 Ing. Vladislav Korecký napsal(a):
 Dobrý den,

 Jsem programátor C# a ve svém volném čase si rozšiřuji obzory a učím
 se Java.
 Nedávno jsem zkoušel napsat web aplikace a trochu mi chybělo
 rozdělění code od HTML.
 A teď k mé otázce:
 Existuje možnost psát JSP stránky v režimu Code-Behind ?

 Když jsem se koukal na videa NetBeans 6 beta 1, tak se mi zdálo že
 tam něco jako code-behind je, ale nejsem si jist.


 Předem děkuji za odpověď,
 Korecký




 

-- 
Jiří Mareš (mailto:[EMAIL PROTECTED])
ČSAD SVT Praha, s.r.o. (http://www.svt.cz)
Czech Republic


Re: Code-Behind

2007-10-25 Tema obsahu Martin Kuba
Ing. Vladislav Korecký wrote:
 Dobrý den,
 
 Jsem programátor C# a ve svém volném čase si rozšiřuji obzory a učím se
 Java.
 Nedávno jsem zkoušel napsat web aplikace a trochu mi chybělo rozdělění
 code od HTML.
 A teď k mé otázce:
 Existuje možnost psát JSP stránky v režimu Code-Behind ?

V javě se tomu neříká Code-behind, ale separace kódu a HTML.
Vycházím z toho, co o code-behind píšou na 
http://support.microsoft.com/kb/303247

Je více možností, jak to udělat. Jedna je, že v JSP stránce použijete

[EMAIL PROTECTED] extends=cz.neco.MojeTrida %

a v MojeTrida.java bude kód. Ale tak se to obvykle nedělá,
protože JSP na rozdíl od ASP.NET neprovedou žádnou magii,
která by při kliknutí na button vyvolala metodu na třídě.

Používají se různé frameworky, a každý na to jde jinak.

Podívejte se na moje oblíbené Stripes 
http://stripes.mc4j.org/confluence/display/stripes/Home
tam se to udělá tak, že v JSP je

%@ taglib prefix=s uri=http://stripes.sourceforge.net/stripes.tld; %

s:form action=/obsluha.action
  s:errors/
  tabletr
 tdjméno:/td
 tds:text name=jmeno //td
  /tr/table
  s:submit name=delejNecoOdesli/s:submit
/s:form

a pak musí existovat třída, ve které je:

@UrlBinding(/obsluha.action)
public class Obsluha implements ActionBean {
...

  @Validate(on = {delejNeco}, required=true)
  private String jmeno;
  public String getJmeno() { return jmeno; }
  public void setJmeno(String s) { jmeno = s; }

  public Resolution delejNeco() {
  //nejaka prace s promennou jmeno
  return new ForwardResolution(/nejaka.jsp);
  }

A jestli nam v Jave 7 zavedou @Property, tak se to otravne getJmeno() a
setJmeno() nebude muset psat.

Makub
-- 
~~
Supercomputing Center Brno Martin Kuba
Institute of Computer Scienceemail: [EMAIL PROTECTED]
Masaryk University http://www.ics.muni.cz/~makub/
Botanicka 68a, 60200 Brno, CZ mobil: +420-603-533775
--



smime.p7s
Description: S/MIME Cryptographic Signature


Re: Code-Behind

2007-10-25 Tema obsahu Ing. Vladislav Korecký

A jak je to s obsluhou jednotlivých kontrolů na serveru ?

Opět malá ukázka ze C#:

File.aspx:
...
input type=text id=mujTextBox runat=server /
...

File.cs
...
mujTextBox.Text = Muj text;
...


Nevím zda je to z mé ukázky patrné, ale jde o to, že když dám kontrolu v 
aspx stránce přepínač runat=server, je tento kontrol dostupný na 
serverové částí a mohu s ním pracovat jako s každým jiným objektem.

Je to součást Code-Behind přístupu.
Mám tuto možnost i v Java ?
Pokud ano můžete mi prosím poslat nějaký link na tutorial ?

Děkuji,
Korecký


Jiri Mares wrote:

Ahoj,

ona je to i ta prvni moznost :-)) protoze vsechny frameworky vypsane v druhem 
bode pouzivaji MVC jako navrhovy vzor.

Jirka

Ing. Vladislav Korecký napsal(a):
  

V C# je situace následující :
Každá aspx stránka má 3 soubory:
   jmeno.aspx - layout stránky, serverovy prvek (komponenta) je
reprezentovana spec. HTML elementem např: cc1:mujKontrol ... /
   jmeno.design.cs - design generated code, kod generovany designerem
(VS2005) Jsou zde deklarace objektu použitých v aspx stránce.
   jmeno.cs - samotný C# code dané stránky (metody, property, atd ... )

Pak je striktně oddělen layout od samotného kodu. A uvítal bych tuto
možnost i v Java, dle vaší odpovědi soudím, že to tam jde a že je to ta
druhá možnost. Je to tak ?

Doufám že jsem to popsal srozumitelně.
Korecký


Roman Pichlik wrote:


Nevim jestli si predstavujete pod pojmem Code-Behind to same co ja,
kazdopadne:

- vetsina web frameworku je striktne MVC
- JSF + Facelets|Clay, Tapestry, Wicket umoznuji psat stare dobre HTML
a pres specialni binding (atribut HTML elementu) napojit jednotlive
komponenty na jejich serverove protejsky


Ing. Vladislav Korecký napsal(a):
  

Dobrý den,

Jsem programátor C# a ve svém volném čase si rozšiřuji obzory a učím
se Java.
Nedávno jsem zkoušel napsat web aplikace a trochu mi chybělo
rozdělění code od HTML.
A teď k mé otázce:
Existuje možnost psát JSP stránky v režimu Code-Behind ?

Když jsem se koukal na videa NetBeans 6 beta 1, tak se mi zdálo že
tam něco jako code-behind je, ale nejsem si jist.


Předem děkuji za odpověď,
Korecký



  


  




Re: Code-Behind

2007-10-25 Tema obsahu Roman Pichlik

Mám tuto možnost i v Java ?


jasne viz predchozi prispevky ;-)


Pokud ano můžete mi prosím poslat nějaký link na tutorial ?


Stahnete si NetBeans s Visual Web Packem a nechtesi vytvorit sample JSF 
aplikaci. To je asi nejrychlejsi zpusob jak se do toho ponorit.  V Jave 
existuje velke mnozstvi web frameworku viz zminovany Wicket, Tapestry a 
dalsi, takze potom si staci vybrat podle osobni preference. Oddeleni, 
ktere zminijete podporuji vsechny - nektere mene a nektere vice obratne...


Re: Code-Behind

2007-10-25 Tema obsahu Jiri Mares

Tak kdyz uz rozjizdime ten flame, pak bych jako jednoduchy a velmi produktivni 
framerk doporucil Tapetsry 5 :-))

Jozef Babjak napsal(a):
 Pokud ano můžete mi prosím poslat nějaký link na tutorial ?
 Stahnete si NetBeans s Visual Web Packem a nechtesi vytvorit sample JSF
 aplikaci. To je asi nejrychlejsi zpusob jak se do toho ponorit.  V Jave
 
   ^-- No, neviem, ci JSF je najvhodnejsi starting point pre niekoho, kto
 sa potrebuje zoznamit vobec s fungovanim MVC webovych frameworkov
 zalozenych na Jave. Hlasoval by som za uz vyssie zmieneny Stripes.
 
 J.

-- 
Jiří Mareš (mailto:[EMAIL PROTECTED])
ČSAD SVT Praha, s.r.o. (http://www.svt.cz)
Czech Republic


Re: Code-Behind

2007-10-25 Tema obsahu Martin Kuba
Jiri Mares wrote:
 Tak kdyz uz rozjizdime ten flame, pak bych jako jednoduchy a velmi 
 produktivni framerk doporucil Tapetsry 5 :-))

Tak si to rozdame na ferovku. Google fight :-)
http://www.googlefight.com/index.php?lang=en_GBword1=stripes+web+frameworkword2=tapestry+5+web+framework

Makub
-- 
~~
Supercomputing Center Brno Martin Kuba
Institute of Computer Scienceemail: [EMAIL PROTECTED]
Masaryk University http://www.ics.muni.cz/~makub/
Botanicka 68a, 60200 Brno, CZ mobil: +420-603-533775
--


smime.p7s
Description: S/MIME Cryptographic Signature


Re: Code-Behind

2007-10-25 Tema obsahu Jozef Babjak
 je to vhodne, protoze to ma IMHO silnou podporu v IDE a to je podle me
 velice dulezite ze zacatku. Navic filozofie Web Packu je podobna

  ^-- Silna podpora v IDE? Ano, to je presne to, co NESMIE mat zaciatocnik,
ktory potrebuje najskor pochopit, co presne musi implementovat, konfigurovat,
ako to prelozit a ako to deploynut. Ked vsetko toto vie urobit rucne, moze
pouzit vykonnu podporut v IDE aby robil veci rychlejsie a nezatazoval sa
reziou frameworku. Ak mu polovicu veci skryjete za IDE, tak ten framework
nikdy nepochopi.

J.


RE: Code-Behind

2007-10-25 Tema obsahu Stöhr Miroslav RNDr . Ph . D .
Dekuji za skvelou formulaci, do kamene tesat!

Osobne bych veskera klikatka zakazal, aplikace by byly hned hezci :-))

  Mirek
 

-Original Message-
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Jozef Babjak
Sent: Thursday, October 25, 2007 10:54 AM
To: Java
Subject: Re: Code-Behind

 je to vhodne, protoze to ma IMHO silnou podporu v IDE a to je podle me 
 velice dulezite ze zacatku. Navic filozofie Web Packu je podobna

  ^-- Silna podpora v IDE? Ano, to je presne to, co NESMIE mat zaciatocnik, 
ktory potrebuje najskor pochopit, co presne musi implementovat, konfigurovat, 
ako to prelozit a ako to deploynut. Ked vsetko toto vie urobit rucne, moze 
pouzit vykonnu podporut v IDE aby robil veci rychlejsie a nezatazoval sa 
reziou frameworku. Ak mu polovicu veci skryjete za IDE, tak ten framework 
nikdy nepochopi.

J.


Re: Code-Behind

2007-10-25 Tema obsahu Roman Pichlik

Osobne bych veskera klikatka zakazal, aplikace by byly hned hezci :-))
  ^-- Silna podpora v IDE? Ano, to je presne to, co NESMIE mat zaciatocnik, ktory 
potrebuje najskor pochopit, co presne musi implementovat, konfigurovat, ako to prelozit a 
ako to deploynut. Ked vsetko toto vie urobit rucne, moze pouzit vykonnu podporut v IDE 
aby robil veci rychlejsie a nezatazoval sa reziou frameworku. Ak mu polovicu 
veci skryjete za IDE, tak ten framework nikdy nepochopi.


ma absolutne opacny nazor. Zacatecnik by mel jit tou nejsnazsi cestou k 
cili (to muze byt treba hello world aplikace nebo jednoduchy formular). 
Az tam dojde, mel by se zacit zajimat o sirsi kontext. Kdyz tohle 
vsechno pobere, muze klidne zahodit vsechna klikaci udelatka a psat to 
rucne. Je nerozvazne odsuzovat klikatka jenom z toho duvodu, ze je 
nekdo muze spatne pouzit. K stejnemu zneuziti muze dojit i v pripade, ze 
clovek danou vec nepochopi.


Muj nazor je, ze do rukou zacatecniku patri silne nastroje. Zrno od plev 
se oddeli pozdeji...


--
S pozdravem Roman Dagi Pichlik

/* http://www.sweb.cz/pichlik/ Blog pro kodery */


Re: Code-Behind

2007-10-25 Tema obsahu Jiri Mares

Ahoj,

na klikatka nemam vyhraneny nazor zda ano nebo ne, ale nepouzivam je ...

Spis mam problem s tim, ze zpristupnuji programovani lidem, kteri by radeji 
programovat nemeli a to me nevadi dokud se
me to netyka, jakmile mi neco podobneho prijde do cesty, vrazda je malo :-)))

Jirka

Roman Pichlik napsal(a):
 
 Osobne bych veskera klikatka zakazal, aplikace by byly hned hezci :-))
   ^-- Silna podpora v IDE? Ano, to je presne to, co NESMIE mat
 zaciatocnik, ktory potrebuje najskor pochopit, co presne musi
 implementovat, konfigurovat, ako to prelozit a ako to deploynut. Ked
 vsetko toto vie urobit rucne, moze pouzit vykonnu podporut v IDE aby
 robil veci rychlejsie a nezatazoval sa reziou frameworku. Ak mu
 polovicu veci skryjete za IDE, tak ten framework nikdy nepochopi.
 
 ma absolutne opacny nazor. Zacatecnik by mel jit tou nejsnazsi cestou k
 cili (to muze byt treba hello world aplikace nebo jednoduchy formular).
 Az tam dojde, mel by se zacit zajimat o sirsi kontext. Kdyz tohle
 vsechno pobere, muze klidne zahodit vsechna klikaci udelatka a psat to
 rucne. Je nerozvazne odsuzovat klikatka jenom z toho duvodu, ze je
 nekdo muze spatne pouzit. K stejnemu zneuziti muze dojit i v pripade, ze
 clovek danou vec nepochopi.
 
 Muj nazor je, ze do rukou zacatecniku patri silne nastroje. Zrno od plev
 se oddeli pozdeji...
 

-- 
Jiří Mareš (mailto:[EMAIL PROTECTED])
ČSAD SVT Praha, s.r.o. (http://www.svt.cz)
Czech Republic


Re: Code-Behind

2007-10-25 Tema obsahu Petr Synek
Ono Pochopit framework je relativni pojem. I ten kdo uspesne nekolik 
let pouziva napr. Struts ho plne nechape, respektive ho chape jen 
natolik, nakolik ho chapat potrebuje. Vzdyt na co by bylo dobre, aby 
kazdy clen teamu perfektne rozumel tomu jak napsat treba plugin do 
Struts, kdyz to pro danou Struts aplikaci neni vubec plugin potreba?
Kazdy slozitejsi framework plne chapou snad jen jeho autori a ani tam si 
nejsem uplne jisty.


Ze vyvojar ma pochopit co se ma implementovat neni zavisle na tom jestli 
se rozhodne pouzivat IDE nebo Notepad. O deployment na cilovy server se 
u vetsich projektu casto stara deployment specialista a vetsine vyvojaru 
pak muze stacit jen Tomcat integrovany do IDE.



Kazdopadne to uz jsme trochu mimo puvodni tema...
Take jsem hledal jestli v Jave existuje framework co funguje na principu 
ASP.NET nebo Adobe Flex (tj. deklarace v XML + oddeleny code behind na 
obsluhu udalosti a manipulaci s komponentami), ale nic podobneho zatim v 
Jave neobjevil.


Ostatne je zajimave, ze na stejne filozoficke bazi jako ASP.NET nebo 
Flex vlastne funguje i stare dobre HTML+DOM+JavaScript. HTML je 
deklarace komponent a code behing je Javascript spousteny udalostmi a 
operujici nad DOMem. Ovsem HTML je bohuzel takovy jake je a Javascript s 
Javou nebo C# opravdu srovnavat nema smysl :-) Navic to cele bezi jen na 
klientovi. Ale zpusob vyvoje je vlastne podobny jako v ASP.NET.



Jozef Babjak wrote:

je to vhodne, protoze to ma IMHO silnou podporu v IDE a to je podle me
velice dulezite ze zacatku. Navic filozofie Web Packu je podobna


  ^-- Silna podpora v IDE? Ano, to je presne to, co NESMIE mat zaciatocnik,
ktory potrebuje najskor pochopit, co presne musi implementovat, konfigurovat,
ako to prelozit a ako to deploynut. Ked vsetko toto vie urobit rucne, moze
pouzit vykonnu podporut v IDE aby robil veci rychlejsie a nezatazoval sa
reziou frameworku. Ak mu polovicu veci skryjete za IDE, tak ten framework
nikdy nepochopi.

J.




Re: Code-Behind

2007-10-25 Tema obsahu Roman Pichlik

Kazdopadne to uz jsme trochu mimo puvodni tema...
Take jsem hledal jestli v Jave existuje framework co funguje na principu 
ASP.NET nebo Adobe Flex (tj. deklarace v XML + oddeleny code behind na 
obsluhu udalosti a manipulaci s komponentami), ale nic podobneho zatim v 
Jave neobjevil.


po treti, existuji

- JSF+facelects|clay
- Tapestry
- Wicket

--
S pozdravem Roman Dagi Pichlik

/* http://www.sweb.cz/pichlik/ Blog pro kodery */


Re: Code-Behind

2007-10-25 Tema obsahu Martin Kuba
Roman Pichlik wrote:
 Kazdopadne to uz jsme trochu mimo puvodni tema...
 Take jsem hledal jestli v Jave existuje framework co funguje na
 principu ASP.NET nebo Adobe Flex (tj. deklarace v XML + oddeleny code
 behind na obsluhu udalosti a manipulaci s komponentami), ale nic
 podobneho zatim v Jave neobjevil.
 
 po treti, existuji
 
 - JSF+facelects|clay
 - Tapestry
 - Wicket
a - Stripes :-)

Makub
-- 
~~
Supercomputing Center Brno Martin Kuba
Institute of Computer Scienceemail: [EMAIL PROTECTED]
Masaryk University http://www.ics.muni.cz/~makub/
Botanicka 68a, 60200 Brno, CZ mobil: +420-603-533775
--


smime.p7s
Description: S/MIME Cryptographic Signature


Re: Code-Behind

2007-10-25 Tema obsahu Roman Pichlik

Martin Kuba napsal(a):

Roman Pichlik wrote:

Kazdopadne to uz jsme trochu mimo puvodni tema...
Take jsem hledal jestli v Jave existuje framework co funguje na
principu ASP.NET nebo Adobe Flex (tj. deklarace v XML + oddeleny code
behind na obsluhu udalosti a manipulaci s komponentami), ale nic
podobneho zatim v Jave neobjevil.

po treti, existuji

- JSF+facelects|clay
- Tapestry
- Wicket

a - Stripes :-)


a urcite nektere dalsi ;-)

--
S pozdravem Roman Dagi Pichlik

/* http://www.sweb.cz/pichlik/ Blog pro kodery */


Re: Code-Behind

2007-10-25 Tema obsahu Ing. Vladislav Korecký

Vsem dekuji za odpovedi.
Resenim je tedy pouzit Framework (viz. nize).
Vim ze jste se zde preli zda klikatka ano nebo ne, ale ja bych na 
zacatek radeji to klikatko :-)
Ktery z techto frameworku vybrat, aby byl co nejvice integrovan do 
NetBeans ?



Roman Pichlik wrote:

Martin Kuba napsal(a):

Roman Pichlik wrote:

Kazdopadne to uz jsme trochu mimo puvodni tema...
Take jsem hledal jestli v Jave existuje framework co funguje na
principu ASP.NET nebo Adobe Flex (tj. deklarace v XML + oddeleny code
behind na obsluhu udalosti a manipulaci s komponentami), ale nic
podobneho zatim v Jave neobjevil.

po treti, existuji

- JSF+facelects|clay
- Tapestry
- Wicket

a - Stripes :-)


a urcite nektere dalsi ;-)





Re: Code-Behind

2007-10-25 Tema obsahu Petr Synek
U Stripes jsem nasel pekny quick start, tak treba na nem muzu osvetlit proc to 
neni uplne ten styl programovani na jaky je asi kolega zvykly z ASP.NET

U Stripes deklaruju komponentu v JSP:
stripes:text name=numberOne/
Potud fajn... 

Ale abych s touto komponentou mohl vubec zacit pracovat v code behind (ziskat z 
ni treba text) musim pro ni deklarovat v Jave bean s alespon:
public double getNumberOne() { return numberOne; }
public void setNumberOne(double numberOne) { this.numberOne = numberOne; }
Navic se musim drzet jmenne konvence a ten bean pojmenovat CalculatorActionBean 
a implementovat ActionBean.


To je asi jako bych ve Swingu nekam umistil JTextField a jeste musel vytvorit 
POJO tridu s getText() a setText() metodama jen kvuli tomu abych mohl z toho 
textfieldu ziskat text. 
A navic bych jeste musel v konstruktoru rict ze ten JTextField ma ID napr. 
Calculator a tu POJO tridu musel pojmenovat CalculatorActionBean a 
implementovat nejaky interface. Tedy zrovna intuitivni mi takovyto 
programatorsky styl neprijde. 


Od intuitivniho web frameworku bych cekal ze s komponentou numberOne budu 
rovnou v Jave (v code behind) pracovat takto:
String text = numberOne.getText();
numberOne.setText(Franta)

Pricemz o deklaraci promene numberOne se uz nestaram, protoze ta uz byla jednou 
deklarovana v JSP (neboli don't repeat yourself). 

Petr


__
 Od: [EMAIL PROTECTED]
 Komu: Java konference@java.cz
 Datum: 25.10.2007 16:38
 Předmět: Re: Code-Behind

Roman Pichlik wrote:
 Kazdopadne to uz jsme trochu mimo puvodni tema...
 Take jsem hledal jestli v Jave existuje framework co funguje na
 principu ASP.NET nebo Adobe Flex (tj. deklarace v XML + oddeleny code
 behind na obsluhu udalosti a manipulaci s komponentami), ale nic
 podobneho zatim v Jave neobjevil.
 
 po treti, existuji
 
 - JSF+facelects|clay
 - Tapestry
 - Wicket
a - Stripes :-)

Makub
-- 
~~
Supercomputing Center Brno Martin Kuba
Institute of Computer Scienceemail: [EMAIL PROTECTED]
Masaryk University http://www.ics.muni.cz/~makub/
Botanicka 68a, 60200 Brno, CZ mobil: +420-603-533775
--





Re: Code-Behind

2007-10-25 Tema obsahu Martin Kuba
Petr Synek wrote:
 To je asi jako bych ve Swingu nekam umistil JTextField a jeste musel vytvorit 
 POJO tridu s getText() a setText() metodama jen kvuli tomu abych mohl z toho 
 textfieldu ziskat text. 
 A navic bych jeste musel v konstruktoru rict ze ten JTextField ma ID napr. 
 Calculator a tu POJO tridu musel pojmenovat CalculatorActionBean a 
 implementovat nejaky interface. Tedy zrovna intuitivni mi takovyto 
 programatorsky styl neprijde. 
 
 
 Od intuitivniho web frameworku bych cekal ze s komponentou numberOne budu 
 rovnou v Jave (v code behind) pracovat takto:
 String text = numberOne.getText();
 numberOne.setText(Franta)
 
 Pricemz o deklaraci promene numberOne se uz nestaram, protoze ta uz byla 
 jednou deklarovana v JSP (neboli don't repeat yourself). 

Jak se koukam na code-behind na http://support.microsoft.com/kb/303247
tak ten TextBox je tam taky definovany dvakrat, jednou
v ASPX:

 asp:textbox id=MyTextBox text=Hello World runat=server/asp:textbox

a podruhe ve tride:

 protected System.Web.UI.WebControls.TextBox MyTextBox;

Jestli .NET pristupuje k protected promennym primo, bez
setXXX() a getXXX() metod, tak je to strucnejsi, ale
porusuje to ruzne zasady, ktere nam SUN vtlouka do hlavy.

Nevidim vyhodu toho, kdyz musim objekt nadeklarovat
a pak na nem volat metodu:

protected System.Web.UI.WebControls.TextBox MyTextBox;

public void MyButton_Click(Object sender, EventArgs e){
MyLabel.Text = MyTextBox.Text.ToString();
}

oproti tomu, kdyz nadefinuju rovnou hodnotu:

private String text;

public Resolution click() {
label = text;
text = Franta;
...
}

Ale jestli to moc potrebujete, staci udelat toto:

public class Neco implements ActionBean{
...
public static class TextBox {
   private String text;
   public String getText() { return text; }
   public void setText(String s) { text = s;}
}

private TextBox textBox =  new TextBox();
public TextBox getTextBox() { return textBox; }

public Resolution click() {
  String text = textBox.getText();
  textBox.setText(Franta);
}

a v JSP udelat

  s:text name=textBox.text /

Tot vse.

Makub

-- 
~~
Supercomputing Center Brno Martin Kuba
Institute of Computer Scienceemail: [EMAIL PROTECTED]
Masaryk University http://www.ics.muni.cz/~makub/
Botanicka 68a, 60200 Brno, CZ mobil: +420-603-533775
--


smime.p7s
Description: S/MIME Cryptographic Signature


Re: Code-Behind

2007-10-25 Tema obsahu Tomas Studva

O asp.net asi tolko:

1, Asp.net je UI komponentovo orientovane(ako swing), okrem toho 
obsahuje aj nevisualne komponenty, to je fajn lebo s komponentami sa 
dobre robi. Teda pracuje sa s komponentami a nie s nejakym hlupym HTML. 
Tie sa vedia renderovat rovnako v roznych prehliadacoch, viazat na data, 
definovat vzhlad - proste klasika, napajame na ne kontroler.
2, Asp  sa mi nezda ukecane. Vela veci sa dopise do code behind po 
kliknuti v designeri.
3, Myslim ze code behind je v java web frameworkoch bezny(ale nie vo 
vsetkych) aj ked je inak implementovany.
4, getter alebo setter si moze kazdy dorobit, lenze v .net to nie je 
konvencia ako v jave. Totiz getter a setter je potreby iba ak v nom 
nieco robis alebo menis visibility. V danom pripade


protected System.Web.UI.WebControls.TextBox MyTextBox; nie je potrebny. 
Popravde property v c# ma problem ze visibility settera sa nutne = visibility 
gettera.

Tomas

Martin Kuba  wrote / napísal(a):

Petr Synek wrote:
  
To je asi jako bych ve Swingu nekam umistil JTextField a jeste musel vytvorit POJO tridu s getText() a setText() metodama jen kvuli tomu abych mohl z toho textfieldu ziskat text. 
A navic bych jeste musel v konstruktoru rict ze ten JTextField ma ID napr. Calculator a tu POJO tridu musel pojmenovat CalculatorActionBean a implementovat nejaky interface. Tedy zrovna intuitivni mi takovyto programatorsky styl neprijde. 



Od intuitivniho web frameworku bych cekal ze s komponentou numberOne budu 
rovnou v Jave (v code behind) pracovat takto:
String text = numberOne.getText();
numberOne.setText(Franta)

Pricemz o deklaraci promene numberOne se uz nestaram, protoze ta uz byla jednou deklarovana v JSP (neboli don't repeat yourself). 



Jak se koukam na code-behind na http://support.microsoft.com/kb/303247
tak ten TextBox je tam taky definovany dvakrat, jednou
v ASPX:

 asp:textbox id=MyTextBox text=Hello World runat=server/asp:textbox

a podruhe ve tride:

 protected System.Web.UI.WebControls.TextBox MyTextBox;

Jestli .NET pristupuje k protected promennym primo, bez
setXXX() a getXXX() metod, tak je to strucnejsi, ale
porusuje to ruzne zasady, ktere nam SUN vtlouka do hlavy.

Nevidim vyhodu toho, kdyz musim objekt nadeklarovat
a pak na nem volat metodu:

protected System.Web.UI.WebControls.TextBox MyTextBox;

public void MyButton_Click(Object sender, EventArgs e){
MyLabel.Text = MyTextBox.Text.ToString();
}

oproti tomu, kdyz nadefinuju rovnou hodnotu:

private String text;

public Resolution click() {
label = text;
text = Franta;
...
}

Ale jestli to moc potrebujete, staci udelat toto:

public class Neco implements ActionBean{
...
public static class TextBox {
   private String text;
   public String getText() { return text; }
   public void setText(String s) { text = s;}
}

private TextBox textBox =  new TextBox();
public TextBox getTextBox() { return textBox; }

public Resolution click() {
  String text = textBox.getText();
  textBox.setText(Franta);
}

a v JSP udelat

  s:text name=textBox.text /

Tot vse.

Makub