Primitiva typer är som standard inte null. Gör priset dubbelt och detta kommer att lösa problemet eftersom det kommer att vara nullbart då. Dessutom kan du lägga till en anpassad getter för att undvika att ha pris som ett nollobjekt.
public double getPrice(){
if(this.price == null) return 0.0;
return this.price;
}
@Ingore säger åt Room att ignorera fältet helt, vilket inte är vad du vill, baserat på ditt svar.