Reklama: Prowadzisz biznes ? Nowi klienci każdego dnia , SPRAWDŹ JAK
Zacheusz Siedlecki

offline

Zacheusz Siedlecki

Programista Java

Wypowiedzi

  • Zacheusz Siedlecki
    Wpis na grupie Java w temacie Problem z uruchomieniem programu z pliku jar
    10.07.2011, 20:00

    NetBeans przygotowuje jary w ten sposób, że dodaje classpath z bibliotekami do manifestu a biblioteki kopiuje do katalogu dist/lib.
    W manifest.mf tworzy tego typu wpis:

    Class-Path: lib/commons-io-2.0.1.jar

    Zakłada więc, że katalog z bibliotekami jest w katalogu bieżącym z którego uruchamiasz aplikację. Umożliwia to odpalanie java -jar bez podawania classpath.
    Jeśli uruchomisz swoją aplikację tak:

    cd "C:\Users\Jero\Documents\NetBeansProjects\Gotowy\Multicast_klient\dist\"
    java -jar Multicast_klient.jar
    to zadziała.Zacheusz Siedlecki edytował(a) ten post dnia 10.07.11 o godzinie 20:06



    Zgłoś | Cytuj

  • Zacheusz Siedlecki
    Wpis na grupie Matematyka w temacie Znacie przykłady generatorów liczb losowych, które...
    9.07.2011, 14:18

    Andrzej Borucki:
    (..)
    Na http://tele.pw.edu.pl/~imargasi/generatory.pdf mamy generator inwersyjny który nie przechodzi testu Maurera dla chi kwadrat.
    poprawny link: http://www.tele.pw.edu.pl/~imargasi/generatory.pdf
    (nie działa bez www na początku ;) )Zacheusz Siedlecki edytował(a) ten post dnia 09.07.11 o godzinie 14:18



    Zgłoś | Cytuj

  • Zacheusz Siedlecki
    Wpis na grupie Java w temacie hosting jboss/tomcat
    9.07.2011, 13:37

    no to się zrobił wątek reklamowy ;)
    widzę, że chodziło o cos lekkiego w Javie - nikt nie wspomniał o chmurkach
    warte polecenia wydaje się Google App Engine - przy małym wykorzystaniu jest darmowy a tak na prawdę to jest zmodyfikowany (rozproszony) Jetty - coś jak Tomcat wspomniany w temacie ;)Zacheusz Siedlecki edytował(a) ten post dnia 09.07.11 o godzinie 13:45



    Zgłoś | Cytuj

  • Zacheusz Siedlecki
    Wpis na grupie Java w temacie Czy miał ktoś podobny problem z JPA ?
    9.07.2011, 13:33

    wszystko wspakzje na problem z persistence.xml (błąd w składni, konfiguracji) bo nie udało się utworzenie EntityManagerFactory. Jak pokażesz swoją konfigurację będzie można zobaczyć więcej :)



    Zgłoś | Cytuj

  • Zacheusz Siedlecki
    Wpis na grupie J2EE w temacie Czy ktoś używał JSF 2.0 z Facelets (Mojarra-2.0.2) na...
    21.10.2010, 16:51

    o ile pamiętam to wskazówka Mariusza pomogła - problem nie występował w nowszej wersjiZacheusz Siedlecki edytował(a) ten post dnia 21.10.10 o godzinie 16:51



    Zgłoś | Cytuj

  • Zacheusz Siedlecki
    Wpis na grupie J2EE w temacie Autoryzacja zarządzana przez kontener - Glassfish 3
    2.09.2010, 21:36

    czepię się: to czego dotyczyło Twoje pytanie to uwierzytelnianie a nie autoryzacja ;)
    Autoryzacja następuje jak już wiadomo z jakim użytkownikiem mamy do czynienia.Zacheusz Siedlecki edytował(a) ten post dnia 02.09.10 o godzinie 21:37



    Zgłoś | Cytuj

  • Zacheusz Siedlecki
    Wpis na grupie J2EE w temacie Czy ktoś używał JSF 2.0 z Facelets (Mojarra-2.0.2) na...
    6.08.2010, 21:49

    O widzę, że problem już został naprawiony. Super. Dziękuję za info :)



    Zgłoś | Cytuj

  • Zacheusz Siedlecki
    Wpis na grupie Rolki w temacie wawa

    Aby mieć możliwość przeczytania tego posta musisz być członkiem grupy Rolki

  • Zacheusz Siedlecki
    Wpis na grupie Rolki w temacie wawa

    Aby mieć możliwość przeczytania tego posta musisz być członkiem grupy Rolki

  • Zacheusz Siedlecki
    Wpis na grupie Rolki w temacie wawa

    Aby mieć możliwość przeczytania tego posta musisz być członkiem grupy Rolki

  • Zacheusz Siedlecki
    Wpis na grupie Rolki w temacie Ciekawsze modele na 2010 r. (by Me)

    Aby mieć możliwość przeczytania tego posta musisz być członkiem grupy Rolki

  • Zacheusz Siedlecki
    Wpis na grupie Rolki w temacie wawa

    Aby mieć możliwość przeczytania tego posta musisz być członkiem grupy Rolki

  • Zacheusz Siedlecki
    Wpis na grupie Java w temacie Oracle kupuje Sun (razem z Java). Co Wy na to ?
    4.02.2010, 01:39

    Aleksander Lech:
    Marek Sybilak:
    http://www.oracle.com/technology/community/sun-oracle-...

    What are Oracle's plans for NetBeans.org?

    NetBeans.org will continue to be available at the usual URL—no changes.

    Co oznacza najprawdopodobniej, że można zapomnieć o NetBeans. Nie piszą, że planują rozwijać.

    Smutna wiadomość. NetBeans pomimo mniejszej popularności niż Eclipse jest moim zdaniem bardziej dopracowaną i stabilniejszą platformą a przede wszystkim opierającą się w całości na Javie.

    Niestety chyba nadeszła wielka era likwidacji projektów ze strony Oracla bo i Kenai też likwidują...
    ja dopinguję NB
    znam zarówno NB jak i eclipse od podszewki.



    Zgłoś | Cytuj

  • Zacheusz Siedlecki
    Wpis na grupie Oracle DBA w temacie Optymalizacja 11g pod jeden typ prostych zapytań [?]
    12.01.2010, 18:24

    Jedynie znacznie zwiększyłem bufor i trochę pokombinowałem. Niemniej jednak rożnica była znaczna.



    Zgłoś | Cytuj

  • Zacheusz Siedlecki
    Wpis na grupie Oracle DBA w temacie Optymalizacja 11g pod jeden typ prostych zapytań [?]
    12.01.2010, 16:03

    Adam Michalski:
    No możliwe, że tu masz rację. Chętnie poznałbym na ten temat opinię specjalistów od Oracle obecnych w tej grupie.

    A sprawdzałeś to na mysqlu np.?
    Tak - nawet chyba gdzieś w tych 'długich wypowiedziach' napisałem, że MySQL działał wolniej przy większych zbiorach danych. Podobnie Apache Derby.



    Zgłoś | Cytuj

  • Zacheusz Siedlecki
    Wpis na grupie Oracle DBA w temacie Optymalizacja 11g pod jeden typ prostych zapytań [?]
    11.01.2010, 15:31

    Michale, dziękuję za Twoją obszerną wypowiedź.

    Michał Z.:
    Baza danych to nie czarna skrzynka, czy też samotna wyspa. Można zrobić tak, żeby dane filtrował, łączył kod w Javie, tak, żeby baza będzie śmigała, a problem był z kodem w Javie.
    Niestety cały czas zakładasz, że źle rozpoznałem problem. Problem rozpoznałem dobrze zwłaszcza, że styk aplikacja - baza danych jest w tym przypadku trywialny a kwestia tego jakie informacje pobierać z bazy bardzo szczegółowo opracowana.
    Co do samego problemu systemu używającego różnych baz danych... Ogólnie to zwykle robi się DAO, które odseparowuje aplikację od konkretnego sposobu przechowywania danych.
    Ogólnie rzecz biorąc tak też jest to zrobione - jest pewna warstwa abstrakcji nad przechowywaniem danych, ale nie w tym rzecz. Jest IoC, możliwość własnej implementacji dla interfejsu i wyspecyfikowanie jej w konfiguracji. Staram się o wyspecyfikowanie przenośności zapytań, żeby tą sprawę ułatwić.
    To jest cały mechanizm. Maszyna serwerowa, system operacyjny, silnik bazy danych, zapytania, i cała reszta do UI. To, że długo trwa select - wcale nie musi oznaczać, że z nim jest problem... Wszystkie zadania walczą o te same zasoby - dużo drobnych zapytań może skutecznie przybić bazę, a optymalizacja tych, co długo trwają wiele nie zmieni.
    Ale w przypadku gdy to jest hurtownia danych mająca (w bardzo dużym uogólnieniu) takie fazy działania:
    1. Ładowanie danych, różne zapytania, powolne inserty itd.
    2. Eksploracja danych - baza w trybie tylko do odczytu i tylko jeden typ zapytań co zostało podkreślone w tym temacie. Nie ma żadnych dodatkowych zapytań o których piszesz - nie trzeba tu nic dodawać. Sprawa wygląda tak jak przedstawiłem.
    Może w ten sposób: Jak odpalę serwer aplikacji na tym samym serwerze co bazę danych to muszę rozpatrywać bazę i serwer jako całość. Tak wiem - oczywiste. Tak samo nie da się mówić o bazie danych, bez mówienia o systemie operacyjnym, choć w przypadku Oracle'a... jest to stosunkowo łatwe. Więcej - to, że serwer aplikacji chodzi obok jedynie komplikuje sytuację, ale jej nie zmienia. Kwestia tylko polega na tym, gdzie jest kreska określająca interfejs który ma być optymalizowany. Czasem nie da się inaczej, bo system jest zamknięty, ale tutaj?
    Stawianie sprawy w ten sposób przypomina mi złe podejście korporacyjne (ponoć bywa i dobre ;). Polega to na tym, że jest armia ludzi, którzy coś tam robią - każdy ma swoje poletko i tylko ono go interesuje. Potem tylko przerzucają kamyczki między poletkami i wszystko stoi w miejscu. Każdy z nich jest zły, sfrustrowany, bo "ORM to jest zło" i tak dalej. Tak to jest nad-interpretacja, ale warto się zastanowić co się robi.
    Tutaj właśnie "da się" określić kreskę. Jest to jeden z tych nielicznych przypadków ;)
    Czasem takie podejście okazuje się bardzo dobre :] Trzeba tylko wtedy uwierzyć w kompetencje drugiej osoby i trochę zaufać, że wykonuje swój element dobrze. Patologie z "przerzucaniem kamyczków" pewnie się zdarzają, ale co innego gdy wykonawcom zależy nie na wykonaniu jednostkowego zadania, lecz na całości.
    W tym przypadku na prawdę nie ma sensu, żebym przedstawiał zastosowane algorytmy dataminingowe zawierające bardzo zaawansowaną kryptografię. Sama implementacja ma ponad 30k lini kodu w Javie co w jakimś tam stopniu oddaje jej złożoność. Na szczęście zdołałem wyizolować problem z bazą danych tak, żeby nie musieć przedstawiać zbędnych szczegółów.
    OK. Czyli jest tak, że na osobnej maszynie z jednym dyskiem 7200 i 2GB ramu stoi baza danych. Jak wygląda sieć? Czy nie jest wąskim gardłem, czy to jest IPv4, bo jak IPv6 to proszę wziąć pod uwagę narzut na nagłówki.
    Problem nie leży w sieci. Baza danych jest podłączona poprzez LAN o przepustowości 80.0 Mbits/sec.
    Czyli projekt zakłada wrzucenie wszystkiego do jednego worka, i dłubanie się z każdą konkretną bazą - osobno? Ja bym zrobił tak, że algorytmy są serwisami, każdy ma jakieś swoje własne parametry, do tego dao. Na koniec zrobiłbym serwis testujący, który jako pole ma serwis kodujący. Wszystko da się zapisać w kontekście springa.
    A skąd takie stwierdzenie, że zakłada? To co piszesz jest dosyć oczywiste i mniej więcej tak to wygląda w zaimplementowanym systemie.
    Oracle to kobyła - to, że jest masa dokumentacji to nie przypadek. To prawda, że ma ogromne możliwości optymalizacji. Tyle, że na 2GB ramu i jednym dysku 7200... ja bym minimalizował straty a nie pchał się w stronę używania dużych narzędzi.
    No możliwe, że tu masz rację. Chętnie poznałbym na ten temat opinię specjalistów od Oracle obecnych w tej grupie.
    Celem jest umieszczenie czegoś w dokumentacji, czy zrobienie optymalnego rozwiązania... To co piszę idzie w stronę tego pierwszego.
    Przez to, że właśnie istnieją różne implementacje odpowiedzialne za przechowywanie danych nie muszę wybierać między tym i tym ;)
    A no właśnie trzeba wiedzieć gdzie jest wąskie gardło - dla całego systemu. Jak wąskim gardłem jest io dla serwera na którym stoi baza danych - to można spróbować. Jak nie - to problem jest w innym miejscu. Optymalizacja zapytań jest ok, ale z każdego silnika trzeba korzystać tak jak autorzy to przewidzieli. Inaczej... nie będzie śmigać.
    No i ja właśnie wiem gdzie to wąskie gardło jest ;) Dlatego prosiłem o pomoc przy optymalizacji tego konkretnego zapytania.
    Nie wygląda to dobrze, ale jak rozumiem to głównie odczyt? Czy każde przeliczenie powoduje zwrotny strzał w bazę...
    Tak jak parę razy już pisałem. Rozmawiamy o fazie działania całości w której baza pracuje w trybie tylko do odczytu i zadawane są jedynie omawiane zapytania.
    Rozumiem, że system stoi, ma się +/- dobrze.
    Tak. Wydajność całości po tym jak uzyskałem pomoc w optymalizacji tych zapytań wzrosła do dopuszczalnego poziomu i system działa zgodnie z oczekiwaniami. Potwierdza to, że problem został dobrze rozpoznany i optymalizacja bazy danych bez wgłębiania się w szczegóły implementacji systemu dała wymierne rezultaty.
    Zwykle część rzeczy piszę dla porządku / uspójnienia.
    Dziękuję za komentarze, wszystkie są dla mnie bardzo cenne niemniej jednak trochę odbiegłeś od tematu :) Mam nadzieję, że wyczerpująco wyjaśniłem dlaczego optymalizacja samej bazy i samych zapytań w tym przypadku jest rozwiązaniem właściwym.



    Zgłoś | Cytuj

  • Zacheusz Siedlecki
    Wpis na grupie Java w temacie zabawa - pytania i zadania
    10.01.2010, 01:12

    Błażej Kępa:
    Moim zdaniem zwrócone będzie "1 a". Obiekt klasy B jest utworzony w momencie ładowania klas, w bloku static. Wtedy ustawiona jest wartość pola a = "a" (blok inicjalizacyjny).
    Dokładnie tak - gratulacje :]
    Błażej Kępa:
    Operacja jest bitowa i jeśli pole a == null to przejdzie do następnego porównania (a.length() == 1) które zaskutkuje NullPointerException'em.
    Zgadza się :)
    Piotr Rusoł:
    Odpowiedź brzmi 1 a.
    Błażej był pierwszy i prawidłowo wyjaśnił.
    Piotr Rusoł:
    Dlatego, że w klasie B nie nastąpiło przesłonięcie zmiennej "a" z klasy nadrzędnej.
    Nie ma żadnego przesłaniania - jest tylko jedna zmienna statyczna.
    Piotr Rusoł:
    Operatory są jak najbardziej ok.
    Kruczek z operatorem wyjaśnił wyżej Błażej i ma rację.
    Piotr Rusoł:
    Co innego by było gdy w klasie B było:

    static String a = "a";
    Tak, ale wtedy zadanie nie byłoby już takie zakręcone :D



    Zgłoś | Cytuj

  • Zacheusz Siedlecki
    Wpis na grupie Java w temacie zabawa - pytania i zadania
    9.01.2010, 22:58

    Jolanta Łukawska:
    To co myślisz, że się nie skompiluje to chyba coś w rodzaju konstruktora statycznego ;)
    Chodzi Wam o to:
        {
    a = "a";
    }
    to jest zwykły blok inicjalizacyjny.
    A haczyk być może jest w operacji bitowej w warunku, bo ta operacja zapewne powinna wykonać się jako pierwsza, sprawić, że warunek nie będzie spełniony i wbrew oczekiwaniom wyświetlić:

    2 a

    Ciężko mi jednak dojść, jakby mógł być ten warunek sprawdzany, więc pewnie się mylę ;).
    To nie jest w pełni prawidłowa odpowiedź :)Zacheusz Siedlecki edytował(a) ten post dnia 09.01.10 o godzinie 23:00



    Zgłoś | Cytuj

  • Zacheusz Siedlecki
    Wpis na grupie Java w temacie zabawa - pytania i zadania
    9.01.2010, 22:25

    Piotr Rusoł:
    To się nawet nie skompiluje :D

    Jeśli już to A.a = "a" i to jeszcze w jakieś metodzie (setter, konstruktor, etc.)
    Kod jest poprawny :) Nie mówię oczywiście o stylu bo z tym masz rację ale to w końcu zadanie ;) Klasy są w tym samym pakiecie (domyślnym) - nie rozumiem dlaczego miałoby się nie skompilować.Zacheusz Siedlecki edytował(a) ten post dnia 09.01.10 o godzinie 22:42



    Zgłoś | Cytuj

  • Zacheusz Siedlecki
    Wpis na grupie Java w temacie zabawa - pytania i zadania
    9.01.2010, 21:57

    No to teraz coś prostego.


    public class A {
    static String a;
    static {
    new B();
    }
    }
    public class B extends A {

    {
    a = "a";
    }

    public static void main(String[] arg) {
    if (a != null & a.length() == 1) {
    System.out.println("1 " + a);
    } else {
    System.out.println("2 " + a);
    }
    }
    }
    spróbujcie uczciwie bez uruchamiania ;) Uwaga na zmyłki ;)Zacheusz Siedlecki edytował(a) ten post dnia 09.01.10 o godzinie 22:01



    Zgłoś | Cytuj

Wyślij zaproszenie do