Zobrazit příspěvky

Tato sekce Vám umožňuje zobrazit všechny příspěvky tohoto uživatele. Prosím uvědomte si, že můžete vidět příspěvky pouze z oblastí Vám přístupných.


Příspěvky - Filip Jirsák

Stran: 1 ... 373 374 [375]
5611
Server / Re:Hosting na VPS a SSL certifikáty
« kdy: 20. 08. 2013, 20:26:16 »
nevíte někdo jak je to s podporou SNI v Glassfishi?
Podle mne SNI server nijak nezajímá -- server certifikát jenom předloží klientovi, ale jeho obsah nemá důvod zkoumat. Jinak by to stejně nebyla záležitost Glassfishe, ale SSL implementace v Javě, respektive JSSE (Java Secure Socket Extension). Java od Oracle podporuje SNI od Java 7 Update 2. Ale to se týká klienta.

5612
Odkladiště / Re:Autentizace na daňový portál
« kdy: 12. 08. 2013, 19:50:28 »
"Signing data with your private signature key" nevypadá jako žádost, ale spíš jako informace o tom, co už probíhá. Potvrzení podle mne probíhá v tom kroku "na žádost vložit smart kartu a odkliknout". Přístup ke kartě zůstává ve Windows v rámci aplikace po určitou dobu platný, tj. pokud do aplikace jednou zadáte PIN, nějakou dobu ho nemusíte zadávat znovu. A především, celý podpis je záležitostí především ovladačů příslušné smart karty (a samozřejmě jejich komunikace se samotnou kartou), aplikace jen nastaví parametry (algoritmus, délka klíče) a pošle podepisovaná data, nic dalšího ale ovlivnit nemůže.

5613
Vývoj / Re:Odchycení kláves 2-0 v Javě
« kdy: 06. 08. 2013, 10:27:13 »
Chtělo by to vyzkoušet, zda to v tom Linuxu dělá Java, nebo XKB. Určitě bych se podíval na výstup příkazu xev – ale ten myslím zobrazuje vstup do XKB, nikoli výstup, takže pokud bude zobrazovat kódy správně, ještě to nemusí znamenat, že problém není v XKB. Možná v XKB budou další utility, se kterými půjde zjistit, co z XKB leze.

Pokud zjistíte, že z XKB lezou očekávaná data, a zkazí to až Java, bude podle mne ještě důležité, zda je to „originál“ Java od Oracle, nebo zda je to třeba OpenJDK.

5614
Vývoj / Re:Odchycení kláves 2-0 v Javě
« kdy: 06. 08. 2013, 08:03:34 »
Za prvé, pokud jste ještě neobjevil příkaz switch, do nízkoúrovňového programování bych se být vámi nepouštěl.

Za druhé, vůbec nepíšete, jakým způsobem klávesy zachytáváte. Na úrovni operačního systému je to tak, že se detekuje stisknutí a uvolnění klávesy, a posílá se kód konkrétní klávesy. O úroveň výš se pak dělá mapování na znaky – takže třeba kombinace dvou kláves se přemapuje na jeden znak, řeší se opakování znaku při držení klávesy atd. Nad tímhle vším pak je ještě Java, která to zase zevšeobecňuje pro multiplatformní programy. Takže je otázka, co všechno je v Javě dostupné.

Za třetí, když si přečtete JavaDoc (bez toho se vůbec nepouštějte do programování v Javě), dočtete se tam, že máte zpřístupněné ty výše zmíněné dvě úrovně. KeyCode se posílá jen při stisknutí a uvolnění klávesy (nižší úroveň zpracování), při události keyTyped už je nastaven na nulu (protože došlo k mapování na znaky a znak je často výsledkem stisku více kláves). A přesně takhle mi to také funguje. Můžete si to sám vyzkoušet:
Kód: [Vybrat]
public class KeyEventTest extends JFrame implements KeyListener {

  @Override
  public void keyTyped(KeyEvent event) {
    printEvent("Typed", event);
  }

  @Override
  public void keyPressed(KeyEvent event) {
    printEvent("Pressed", event);
  }

  @Override
  public void keyReleased(KeyEvent event) {
    printEvent("Released", event);
  }

  private void printEvent(String eventName, KeyEvent event) {
    System.out.println(String.format("%s: %c %d %d", eventName, event.getKeyChar(), event.getKeyCode(), event.getKeyLocation()));
  }

  public static void main(String[] args) {
    new KeyEventTest().setVisible(true);
  }

  public KeyEventTest() throws HeadlessException {
    super("KeyEvent");
    setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
    setMinimumSize(new Dimension(200, 200));
    addKeyListener(this);
  }
}

5615
Vývoj / Re:Jak funguje Spring HTTP invoker?
« kdy: 25. 07. 2013, 09:19:05 »
Chápu správně, že v jeho metodě invoke(...) musím serveru poslat jméno volané třídy, metody a její parametry (třeba ve formátu test.Car[TAB]getConsumption[TAB]42), tam si pomocí reflexe vytvořit patřičnou instanci, zavolat metodu a výsledek odeslat zpět klientskému InvocationHandleru, který jej vrátí mé proxy třídě?
Pokud si to chcete vyzkoušet, nepotřebujete žádný InvocationHandler, ale jednoduše ve třídě implementující na klientovi rozhraní Car přímo zavolejte HTTP požadavek. Vytváření proxy bych zkoušel až v druhém kroku, i to volání přes HTTP je dost práce.

Tímhle si vyzkoušíte ten princip komunikace, ale pro pochopení Spring Remotingu je to podle mne vlastně zbytečné. To, jak se vytvářejí proxy a data posílají přes síť, je totiž asi jedna z mála věcí, kterou u toho Spring Remotingu řešit nemusíte a funguje to samo. Řešit budete hlavně to, jak to používat ve své aplikaci a jak to celé nakonfigurovat. Spring totiž používá spoustu výchozích nastavení, třeba jméno třídy se nepřenáší v požadavku, místo toho je název beany odvozený ze jména třídy součástí URL. Takže když budete postupovat přesně podle návodu a použijete přesně stejná jména, ale jakmile něco přejmenujete, přestane vám to fungovat, protože  od toho jména bylo odvozeno další jméno někde úplně jinde. A pochopit Spring Remoting znamená pochopit hlavně tyhle vazby, který kontext je potomkem kterého, která třída se automaticky zveřejní a proč, které interceptory se na ní budou aplikovat atd.

5616
Vývoj / Re:Jak funguje Spring HTTP invoker?
« kdy: 24. 07. 2013, 13:24:34 »
Je to obecný princip, který se používá skoro ve všech remoting frameworcích v Javě. Na klientovi máte jen rozhraní a na serveru jeho implementaci. K tomu rozhraní se na klientovi (většinou) automaticky vytvoří umělá třída (stub). Když na ní zavoláte metodu, zabalí ta uměle vytvořená třída parametry volání, pošle je na server, tam se vykoná implementace té třídy, výsledek se zabalí a pošle zpět na klienta. Na klientovi se výsledek rozbalí a vrátí se jako návratová hodnota volané metody. Serializují se tedy parametry volané metody a návratová hodnota – a příslušné třídy tedy samozřejmě musí být na obou stranách. Jinak celé se to dělá právě proto, aby se ten výkonný kód spustil na serveru.

5617
Samba „jenom“ mapuje volání Windows služeb do unixového systému. Až na výjimky tedy nijak neřeší práva, diskové kvóty atd. To vše je záležitost systému pod ní – uživatelé a skupiny mají taková práva a diskové kvóty, jaká mají v operačním systému. Na straně Linuxu/Unixu tedy nastavujete práva klasickými příkazy chmod, chown, chgrp a setfacl, případně je můžete nastavovat z Windows pomocí standardních GUI nástrojů.

5618
Server / Re:Zabezpečení SSH
« kdy: 25. 02. 2013, 12:12:58 »
Zvolil bych SSH přihlašování pomocí klíčů, případně omezit přístup přes SSH jenom těm uživatelům, kteří ho opravdu potřebují. Ostatně – problém byl ve slabém heslu, takže je dobré vyřešit ten problém a zařídit silnější hesla. Klíč je dost silné heslo. Přidat další vrstvu, kde budete mít zase slabá hesla, není řešením.

Citace
na druhou stranu se jednalo o běžného usera, takže nemohli nic moc napáchat
Na to bych moc nespoléhal. Útok z lokálního účtu má daleko víc možností, zároveň je mnohem více lokálně zneužitelných chyb (zrovna před pár dny byla jedna opravena v linuxovém jádru, a takových chyb je několik za rok).

5619
Odkladiště / Re:Bitcoin a ich zdanenie
« kdy: 11. 02. 2013, 15:55:32 »
Citace
Keď predáš mrkvu, máš príjmový pokladničný doklad. To je tvoj príjem, nie tá mrkva.
Doklad není příjmem. Příjmem jsou peníze nebo třeba rajčata, za které jsem tu mrkev prodal/směnil. Žádný doklad na to v obecném případě mít nemusím.

Stran: 1 ... 373 374 [375]