Archive for the ‘ Programowanie ’ Category

InstaSearch – błyskawiczne szukanie w Eclipse

Od czasu do czasu potrzebujemy wyszukać czegoś w naszych Eclips’owych projektach, w miarę rozbudowy aplikacji dokładne przeszukiwanie wszystkich plików staje się praktycznie niemożliwe ( np. zajmuje 10 min ) . Z pomocą przychodzi nam plugin InstaSearch, który podobnie jak Google Instant Search, natychmiast zwraca nam wyniki wyszukiwania. InstaSearch to dodatek stworzony przez ajermakovics ( Andrejs Jermakovics ), działa on podobnie jak domyślna wyszukiwarka w Eclipse w oparciu o Apache Lucene. Jednym z ciekawszych elementów dodatku jest oczywiście tworzenie ( wraz z możliwością przebudowy ) indeksu wyszukiwanych fraz, dzięki któremu możliwe jest otrzymanie wyników niezwłocznie po wpisaniu zapytania.

InstaSearch

InstaSearch

Plugin umożliwia zawężenie wyników wyszukiwania ( zbudowanie filtra ):

  • w oparciu o projekt ( projekty )
  • w oparciu o typ plików
  • w oparciu o datę modyfikacji

Czytaj dalej

Problemy ze stabilnością Eclipse – Unhandled event loop exception, PermGen space

Podczas użytkowania najnowszej wersji Eclipse for PHP Developers ( Helios SR2 Windows) napotkałem na bardzo nieprzyjemny błąd uniemożliwiający dłuższą ( czyli praktycznie każdą ) pracę z kodem. Błąd polegał na wyświetleniu komunikatu o treści:

Unhandled event loop exception
PermGen space

a w kolejnym okienku byłem proszony o wyłączenie Eclipse, który i tak już „wisiał”. W wersji mniej rozbudowanej Eclipse po prostu zamykał nagle okno i znikał z pola naszego widzenia ( pozostawiając jednak nadal proces w pamięci, działający w aktualnym folderze workspace ). Czytaj dalej

Interaktywna strona – czyli jak ożywić naszą stronę

Jak wyróżnić się z tłumuChyba każdy od czasu do czasu odczuwa potrzebę wprowadzenia zmian w naszym otoczeniu, nie inaczej jest ze stronami internetowymi. Wskazane jest dokonywanie zmian ( czasem nawet niewielkich ) tak żeby nasi użytkownicy nie nudzili się odwiedzając naszą stronę. Tylko co by tu zmienić, tak żeby nie wprowadzać rewolucji na stronie i jednocześnie nie tracić czasu na duże zmiany. Jedną z propozycji jest mały gadżet pojawiający się na stronie np. może to być dodatkowe stałe menu, pojawiające się gdy już stracimy z oczu menu główne. Na stronie www.asl.com.pl można obejrzeć efekt jaki daje użycie takiego gadżetu.

1. Co ma się znaleźć w naszym stałym boxie?

Dodatkowe menu , być może link do pokrewnego artykułu … ? Pomysły można mnożyć.

Nasze pudełko na zabawki:

<div class="menu_bottom">
</div>

i styl pudełka

Czytaj dalej

Darmowy parser HTML dla jezyka Java

JavaJericho HTML Parser jest biblioteką Javy umożliwiającą analizę i manipulowanie dokumentem HTML, również po stronie serwera. Jericho HTML Parser udostępniony jest na licencji LGPL.

Biblioteka wyróżnia się spośród innych parserów HTML następującymi cechami:

  • Nie jest generowane drzewo parsowania dla całego dokumentu. Tekst źródłowy jest przeszukiwany tylko dla znaczników związanych z bieżącą operacją. Pozwala to na analizę dokumentów zawierających niepoprawny  lub źle sformatowany kod HTML.
  • Jericho HTML Parser daje możliwość modyfikacji tylko wybranego segmentu bez konieczności poprawiania całego dokumentu. Czytaj dalej

Darmowa biblioteka XML dla języka Java

JavaJeżeli poszukujesz darmowej biblioteki do obsługi formatu XML dla języka Java, mogę polecić Ci bibliotekę XStream.  XStream jest prostą biblioteką do serializacji obiektów do formatu XML i z powrotem. Biblioteka udostępniona jest na licencji BSD i nie powinien nikogo zdziwić fakt, że ostatnia jej aktualizacja datowana jest na grudzień 2008 roku. Jak chwalą się autorzy biblioteka jest:

  • łatwa w użyciu
  • nie musimy mapować naszych obiektów
  • wydajna

Od siebie mogę dodać, że na stronach biblioteki znaleźć można napisany w przystępnej formie tutorial, umożliwiający szybkie rozpoczęcie pracy.

I tak, żeby zserializować następującą strukturę klas:

public class Person {
  private String firstname;
  private String lastname;
  private PhoneNumber phone;
  private PhoneNumber fax;
  // ... constructors and methods
}

public class PhoneNumber {
  private int code;
  private String number;
  // ... constructors and methods
}

Wystarczy zainicjalizować i odpowiednio skonfigurować obiekt biblioteki:
Czytaj dalej

Partnerzy Pro: