Java backend