Protokolünün bir parçası olarak paketlenmiş iletileri kullanan bir Python hizmetini kullanıyorum. Bu servisi Java'dan sorgulamak istiyorum, ancak bunu yapmak için mesajımı istemcide (Java) seçmem gerekiyor. JVM'de (ideal olarak en az bağımlılıkla) çalışan herhangi bir pickle
uygulaması var mı?Bir Java nesnesini, turşu (Python) tarafından serileştirilebilecek şekilde nasıl serileştiririm?
Açıklama: Sunucu tarafının değiştirilmesi bir seçenek değildir, bu nedenle alternatif serileştirmeler uygun olurken, sorunu burada çözmezler.
Bu çok çirkin. Sanmıyorum, JSON veya bir şey üretmek için servis alma şansı var mı? Sunulan verilere bağlı olarak, json.dumps' için 'pickle.dumps' swapping'i yapmak kadar basit olabilir. Bu hizmetin arkasındaki adamlar, eğer mümkün olursa, bu değişikliği kesinlikle yapmalıdırlar. Python içinde kalmayı garantileyen prototip ve veriler dışında herhangi bir şey için turşu gerçekten çok kötü bir seçimdir (örneğin, saf Python uygulamanız dışında bir şey için hiç bir şey yapmayacağı için)). – delnan
Bir Java 'Map''i turşu Python' Hash''a serileştirmek kadar basit olmalıdır. İstemci tarafında şifrelenmem gerekmiyor. Jython'a bağımlılık olarak çekmek, yine de yutmak için büyük bir hapdır. –
@SethFitzsimmons: Pickle, Python'a özel bir protokoldür ve genellikle 'internal' olarak kabul edilir - protokolün kendisi belgelenmez ve sadece standart turşu uygulamalarını kullanırız. Protokolü java'da yeniden yapılandırmak istemedikçe, Python veya Jython'a bağlı olmanız gerekir. –