Hi Robert,
Thank you for the update. Any idea when the next release of Axis2 will be
released? Also, Axis 2 is using few old versions of the dependencies like
jettison, woodstox-core, and comms-fileupload. Will all there old version be
updated to most recent versions that have addressed the security
vulnerabilities?
Thanks, Amir Razi
On Tuesday, February 6, 2024 at 10:44:26 AM EST, robertlazarski
<[email protected]> wrote:
I finally found some time to look more at your question.
Also keep in mind that Axis2 uses an older version 3.x of XMLBeans, as the
project was retired then a few years later brought back to life because Apache
POI uses it. 5.2.0 was released recently.
Anyways, I am not familiar with the Extension Interfaces Feature yet I suggest
just adding it then to Axis2 as a new feature if you are so inclined as I doubt
it is hard to do. At a glance, early in the XMLBeans 5.x series that feature
had problems but seems to be fixed now.
If you could suggest how we could improve the docs here please send a pull
request to our apache axis2 github repo.
I am trying hard at the moment to wrap up the next Axis2 release soon and can
only say right now that I can get any changes you supply via pull requests
merged into our repo. Anything beyond that which requires help, please create a
Jira.
On Sun, Jan 28, 2024 at 6:56 AM Steven De Herdt <[email protected]>
wrote:
Hi Robert
Thanks for your answer. It took me a while to examine my options here,
it's a lot more complicated than the acronym "SOAP" suggests...
At first I was looking through the code that does code generation. It
seemed rather involved to fork it and make it do exactly what I wanted.
Then, following your hint about WSDL2Code's command line arguments, I
discovered '-xsdconfig'. I am already using the XMLBeans bindings, and
it turns out there's a feature in there that's exactly what I'm looking
for:
https://cwiki.apache.org/confluence/display/XMLBEANS/ExtensionInterfacesFeature
. Nice, and I could get it to work with XMLBeans' scomp utility. I
managed to pass the location of the xsdconfig file through my pom.xml --
not clearly documented, see here:
https://marc.info/?l=axis-user&m=120177766308116. Apparently though,
the code in axis2-xmlbeans to parse the xsdconfig does not support this
Extension Interfaces Feature. (I also noticed that changing a generated
class name (qname element) fails with the xsdconfig through Maven, while
the same xsdconfig through scomp works.)
So back to square one I guess. Would it be easiest to just fork a
codegen package and make a quick and dirty hack in the code or a stylesheet?
Greetings
-Steven
Op 19/12/2023 om 21:35 schreef robertlazarski:
> The two things I suggest looking into are the WSDCode java class with
> ways such as Ant / Maven to tie into it...
>
> And the xls code for each data binding - ADB, XMLBeans, JAXB among
> others - that does the "implements org.apache.axis2.data
> binding.*" generation that is particular to the binding.
>
> Since WSDL2Code supports quite a few line arguments, that'd be the place
> I would try to tie into the "implements" part of the interface and class
> generation from the WSDL and XSD files.
>
> On Mon, Dec 18, 2023 at 6:31 AM Steven De Herdt
> <[email protected]> wrote:
>
> Hello
>
> The project I'm working on is a client implementing dozens of WSDL
> operations/SOAP call types. The SOAP bodies involved all follow a
> general structure, which is described in as many dozens of XSD's,
> differing only in some types several levels deep into the SOAP body.
> Error representation, bundling requests etc. are all exactly the same.
>
> When generating the service stubs, wsdl2code helpfully prepares all
> classes and types involved. These of course also follow the same
> structure for each call type, but all those parallel classes are of
> unrelated types. I understand they can't just be the same, but it
> would
> be nice for code reuse if they each implemented an interface describing
> common methods. The names of the methods are already the same, return
> types declared in the interfaces could be these new interfaces, so I
> would just need an "implements GenericAnswerType" or some-such in the
> generated classes.
>
> Now my question: can I get something like that by plugging into Axis'
> code generation? Or is there perhaps another way to do code
> transformation or patching from Maven? If possible, I'd like to avoid
> 'tampering' manually with the generated sources.
>
> Thanks for any pointers you might give me.
> -Steven
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [email protected]
> <mailto:[email protected]>
> For additional commands, e-mail: [email protected]
> <mailto:[email protected]>
>