SOAP in Java: xsd file to java classes generate (xsd dosyalarından java classları oluşturma)

“xsd file to java classes generate”. Konu aslında java soap projelerinde işinizi kolaylaştıracak bir püf nokta verecek olmam. soap’ ı konu olarak anlatan bir yazı niteliğinde değildir. Bilginize,

Projeniz bazen size bazı platformları bağımlı kılar. Bunlar eski teknolojiler olsa da bazen diğer sistemlerle entegre etmek için bu duruma bağımlı olursunuz. Yani entegrasyon yazılımının bütünlüğüne bakıldığında eski teknoloji ile yazılım geliştirmeniz gerekebilir. Eski teknoloji diye tekrarladığım şey soap aslında. Restful varken. 🙂

Ben blogumda ilerleyen günlerde restful web servislerini en ince ayrıntıları ile anlatacağım. soap’ a değinmeyi düşünmüyorum. Belli olmaz gerçi benim işim, onu da anlatabilirim.

Soap ta xsd dosyası oluşturulmuşsa ve object class ları oluşturulması gerekiyor. Object/model class’ ları otomatik generate ettirebilirsiniz.

Bunun için

  1. JAXB 2.1 API implementi gerekli
  2. JDK 1.6 sürümü olması gerekli.

Özellikle vurgulamak gerekirse bu yapılacak işlemde java version’ un 1.6 seçili olması ile birlikte projenin compile yöntemi 1.6 seçili olması gereklidir. Aksi halde plugin nameconverter hatası verecektir. 

 

O zaman kısa notlarla başlayalım.

(xjc diye bir command line var. buraya komut yazarakta bu işlemi yapabiliyorsunuz fakat ben plugin üstünden anlatacağım. Merak eden arkadaşlar için bkz. )

 

resim1

 

.xsd dosyanızın var olduğunu varsayarak ilerliyorum. new-file-other ile resim1 deki pencereyi açıp jaxb yazarsanız plugin ‘in size sunduğu seçenekler gelecek. İlki jaxb classes from schema seçerek ilerliyoruz.

 

resim2

Projemizi seçip ilerlemeye devam ediyoruz.

resim3

Şimdi ise java class’ larımızın oluşmasını istediğimz .xsd dosyasını seçiyoruz. Generate sonrası xsd dosyalarına xml binding ile annotation olacaktır.

resim4

Burada java class ların oluşmasını istediğiniz alanı source folder da belirtmeniz lazım. package family dediğimiz proje dosyalarının bulunduğu alan yani (diğer java class ların yer aldığı/yer almasını istediğiniz alan)

package kısmında. bir önceki adımda seçtiğiniz source folder a bağlı olarak o kaynakta yer alan package’ ler dizilecek. yeni bir package oluşturabilir veya mevcut bir package’ nin içerisine generate edilmesini isteyebilirsiniz. eclipse link kullanarak moxy implementi yapmak isterseniz bu checki işaretlemeniz gerekecek.

resim5

 

 

resim6

 

resim5 ve resim6 da generate edilecek olan java class’ larda olmasını beklediğiniz özelliklerle alakalı ayarlamayalar yapıyorsunuz.

Finish edildiğinde xsd içeriğinde tanımlanan her tanımı 1-2 sn içerisinde object mapping özelliği ile (xml binding) generate edecektir.

Sorunuz olrusa yorumlarda konuşalım.

iyi çalışmalar, selamlarımla.

 

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir