Это очень похоже на использование услуг WCF. Самое главное - иметь правильно разработанный контракт на обслуживание между клиентом Silverlight и сервером Java.
Что вам нужно, так это сервис Java, демонстрирующий свою функциональность через SOAP или REST (XML или JSON). Этого можно достичь с помощью инфраструктуры веб-служб, такой как Apache CXF.
На стороне клиента вам, вероятно, потребуется реализовать логику для отслеживания изменений данных через INotifyPropertyChange и INotifyCollectionChanged. Я интегрировал бэкэнды Java с Silverlight несколько раз. Я не думаю, что это сильно влияет на время и стоимость разработки, потому что это прямо.