[Java][Spring] Baza danych w Spring

W poprzednim kursie odnoszącym się do Spring Boot, skończyliśmy na utworzeniu pierwszego projektu. Nie mamy w nim nic, oprócz domyślnych plików i ustawień. Naszym celem jest utworzenie aplikacji do wyświetlania wyników lotto. Aby nie obciążać obcego systemu z którego będziemy pobierać te wyniki http://www.mbnet.com.pl/wyniki.htm, będziemy je wczytywać do naszej bazy danych przy każdym uruchomieniu aplikacji.

[Java][Kryonet] Połączenie TCP i UDP. Serwer i Client.

W tym poście przedstawię wam podstawowe zasady programowania socketów w Javie. Ustanowimy podstawowe połączenie pomiędzy serwerem a klientem.

[Java][LibGDX][artemis-odb] Szybkie tworzenie prototypu.



Pisanie gier w Javie, nawet w tak rozbudowanym frameworku jak libGDX jest dość mozolnym i uciążliwym zajęciem, w porównaniu np. do szybkości pisania w gotowych silnikach. Jak np. Unity.
Na szczęście istnieją biblioteki pomagające w przyśpieszeniu naszej pracy i jej uproszczeniu. Oczywiście kosztem poznania danej biblioteki. Dzisiaj właśnie o jednej takiej bibliotece będzie.
Jest nią artemis-odb.
Sam artemis-odb to implementacja systemu ESC - Entity System Component. Czyli taki system w którym nasz główny obiekt World, jest uzupełniany przez nasze Entity posiadające Componenty i obsługiwany przez nasze Systemu. Dzięki temu mamy fajną skalowalna aplikację, z odseparowana logiką.

[Java][Spring] Jak rozpocząć pisanie w Spring Boot - kurs

W tym poście przedstawię wam najszybszy sposób na tworzenie aplikacji w Spring Boot z wykorzystaniem języka Java. Źródło to powinno stanowić punkt startowy przy pracy z Springiem i wyjaśniać podstawowe kwestie związane z konfiguracją i środowiskiem programistycznym.

[Java][Windows] Instalowanie jar`a jako usługi systemu windows

Czasem zachodzi potrzeba aby nasza usługa włączała się i pracowała jako usługa. Możemy tego dokonać dzięki programowi NSSM, a to wszystko przy użyciu konsoli albo graficznego interfejsu.

[Java][Maven] Własne repozytorium mavenowe.

Aby móc udostępniać innym swoje biblioteki w mavenie lub trzymać swoje prywatne repozytorium, możemy wykorzystać do tego celu konto ftp.
W tym celu możemy wykorzystać jakiś hosting, własny komputer albo dowolny w sieci lokalnej.


[Java][Spring]Dynamiczne konfigurowanie komponentów i ich właściwości z pliku konfiguracyjnego.

Gdy potrzebujemy mieć możliwość "zewnętrznego i dynamicznego" wpływu na ustawienia konfiguracji, np. czasu wykonywania zadań to możemy tego dokonać wpisująć interesujące nas właściwości w pliku application.properties naszego Springowego projektu a następnie je dynamicznie wczytać w kodzie programu np. tak:

@Scheduled(fixedDelayString = "${my.property.fixed.delay.seconds}000")
private void process() {
    // your impl here
}

[Axis2][Java] ERROR AxisEngine:219 - Must Understand check failed for header http://www.w3.org/2005/08/addressing : Action

Poniżej zapis pierwszych linii errora, który otrzymałem pisząc połączenie SOAP z jedną z usług webowych:

2015-11-16 14:01:35 ERROR AxisEngine:219 - Must Understand check failed for header http://www.w3.org/2005/08/addressing : Action
org.apache.axis2.AxisFault: Must Understand check failed for header http://www.w3.org/2005/08/addressing : Action
at org.apache.axis2.engine.AxisEngine.checkMustUnderstand(AxisEngine.java:105)
at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:171)

Spowodowane jest ono brakiem odpowiedniego engage module dodanego do naszego stuba, rozwiązaniem jest poniższy kod:

stub = new TPIServiceStub(serviceUrl);
ServiceClient sc = stub._getServiceClient();
sc.engageModule("addressing");