cxf-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From build...@apache.org
Subject svn commit: r1018123 [2/2] - in /websites/production/cxf/content: ./ cache/ docs/
Date Wed, 13 Sep 2017 19:57:21 GMT
Modified: websites/production/cxf/content/faq.html
==============================================================================
--- websites/production/cxf/content/faq.html (original)
+++ websites/production/cxf/content/faq.html Wed Sep 13 19:57:20 2017
@@ -111,19 +111,19 @@ Apache CXF -- FAQ
            <!-- Content -->
            <div class="wiki-content">
 <div id="ConfluenceContent"><h1 id="FAQ-FrequentlyAskedQuestions">Frequently
Asked Questions</h1><p><style type="text/css">/*<![CDATA[*/
-div.rbtoc1505321880839 {padding: 0px;}
-div.rbtoc1505321880839 ul {list-style: disc;margin-left: 0px;}
-div.rbtoc1505321880839 li {margin-left: 0px;padding-left: 0px;}
+div.rbtoc1505332601675 {padding: 0px;}
+div.rbtoc1505332601675 ul {list-style: disc;margin-left: 0px;}
+div.rbtoc1505332601675 li {margin-left: 0px;padding-left: 0px;}
 
-/*]]>*/</style></p><div class="toc-macro rbtoc1505321880839">
+/*]]>*/</style></p><div class="toc-macro rbtoc1505332601675">
 <ul class="toc-indentation"><li><a shape="rect" href="#FAQ-General">General</a>
-<ul class="toc-indentation"><li><a shape="rect" href="#FAQ-CanCXFrunwithJDK1.8/Java8?">Can
CXF run with JDK 1.8/Java 8?</a></li><li><a shape="rect" href="#FAQ-CanCXFrunwithJDK1.7/Java7?">Can
CXF run with JDK 1.7/Java 7?</a></li><li><a shape="rect" href="#FAQ-CanCXFrunwithJDK1.6?">Can
CXF run with JDK 1.6?</a></li><li><a shape="rect" href="#FAQ-CanCXFrunwithouttheSunreferenceSAAJimplementation?">Can
CXF run without the Sun reference SAAJ implementation?</a></li><li><a
shape="rect" href="#FAQ-AretherecommercialofferingsofCXFthatprovideservices,support,andadditionalfeatures?">Are
there commercial offerings of CXF that provide services, support, and additional features?</a></li><li><a
shape="rect" href="#FAQ-IsthereanApacheCXFcertificationprogram?">Is there an Apache CXF
certification program?</a></li></ul>
+<ul class="toc-indentation"><li><a shape="rect" href="#FAQ-CanCXFrunwithJDK1.8/Java8?">Can
CXF run with JDK 1.8/Java 8?</a></li><li><a shape="rect" href="#FAQ-CanCXFrunwithJDK1.7/Java7?">Can
CXF run with JDK 1.7/Java 7?</a></li><li><a shape="rect" href="#FAQ-CanCXFrunwithJDK1.6?">Can
CXF run with JDK 1.6?</a></li><li><a shape="rect" href="#FAQ-CanCXFrunwithJDK1.5?">Can
CXF run with JDK 1.5?</a></li><li><a shape="rect" href="#FAQ-CanCXFrunwithouttheSunreferenceSAAJimplementation?">Can
CXF run without the Sun reference SAAJ implementation?</a></li><li><a
shape="rect" href="#FAQ-AretherecommercialofferingsofCXFthatprovideservices,support,andadditionalfeatures?">Are
there commercial offerings of CXF that provide services, support, and additional features?</a></li><li><a
shape="rect" href="#FAQ-IsthereanApacheCXFcertificationprogram?">Is there an Apache CXF
certification program?</a></li></ul>
 </li><li><a shape="rect" href="#FAQ-JAX-WSRelated">JAX-WS Related</a>
 <ul class="toc-indentation"><li><a shape="rect" href="#FAQ-Thepartsinmygeneratedwsdlhavenamesoftheform&quot;arg0&quot;,&quot;arg1&quot;,...Whydon'ttheparts(andJavageneratedfromthem)usetheniceparameternamesItypedintotheinterfacedefinition?">The
parts in my generated wsdl have names of the form "arg0", "arg1", ... Why don't the parts
(and Java generated from them) use the nice parameter names I typed into the interface definition?</a></li><li><a
shape="rect" href="#FAQ-HowcanIaddsoapheaderstotherequest/response?">How can I add soap
headers to the request/response?</a></li><li><a shape="rect" href="#FAQ-HowcanIturnonschemavalidationforjaxwsendpoint?">How
can I turn on schema validation for jaxws endpoint?</a></li><li><a shape="rect"
href="#FAQ-AreJAX-WSclientproxiesthreadsafe?">Are JAX-WS client proxies thread safe?</a></li><li><a
shape="rect" href="#FAQ-Thegeneratedwsdl(GETrequestonthe?wsdladdress)doesn'tcontainthemessages,types,portType,etc...WhatdidIdowrong?">The
generated wsdl (GET
  request on the ?wsdl address) doesn't contain the messages, types, portType, etc... What
did I do wrong?</a></li></ul>
 </li><li><a shape="rect" href="#FAQ-SpringRelated">Spring Related</a>
 <ul class="toc-indentation"><li><a shape="rect" href="#FAQ-WhenusingSpringAOPtoenablethingsliketransactionsandsecurity,thegeneratedWSDLisverymessedupwithwrongnamespaces,partnames,etc...">When
using Spring AOP to enable things like transactions and security, the generated WSDL is very
messed up with wrong namespaces, part names, etc...</a></li></ul>
 </li></ul>
-</div><h2 id="FAQ-General">General</h2><h3 id="FAQ-CanCXFrunwithJDK1.8/Java8?">Can
CXF run with JDK 1.8/Java 8?</h3><p>Yes. CXF supports Java 8. The latest 3.x version
is built using JDK 1.8.</p><h3 id="FAQ-CanCXFrunwithJDK1.7/Java7?">Can CXF run
with JDK 1.7/Java 7?</h3><p>Yes. CXF supports Java 7. Since Java 7 contains the
2.2.x versions of both JAXB and JAX-WS API jars, using CXF with Java 7 is much easier than
with Java 6.</p><div class="confluence-information-macro confluence-information-macro-information"><span
class="aui-icon aui-icon-small aui-iconfont-info confluence-information-macro-icon"></span><div
class="confluence-information-macro-body"><p>CXF 3.2 no longer supports Java 7 and
requires Java 8 or newer. Users are strongly encouraged to start moving to Java 8.</p></div></div><h3
id="FAQ-CanCXFrunwithJDK1.6?">Can CXF run with JDK 1.6?</h3><p>JDK 1.6 incorporates
the JAXB reference implementation. However, it incorporates an old version of the RI. CXF
does not support th
 is version. As of 1.6_04, this is easy to deal with: you must put the versions of JAXB RI
(the 'impl' and 'xjc' jars) that we include with CXF in your classpath. As of this writing,
these are version 2.2.10.</p><div class="confluence-information-macro confluence-information-macro-information"><span
class="aui-icon aui-icon-small aui-iconfont-info confluence-information-macro-icon"></span><div
class="confluence-information-macro-body"><p>CXF 3.1 no longer supports Java 6 and
requires Java 7 or newer.</p></div></div><p><span style="color:
rgb(0,0,0);font-size: 1.4em;line-height: 1.5625;">Can CXF run with JDK 1.5?</span></p><p>Yes
for CXF 2.6.x and older. Keep in mind though that Java 2 SE 5.0 with JDK 1.5 has reached end
of life (<a shape="rect" class="external-link" href="http://www.oracle.com/technetwork/java/eol-135779.html"
rel="nofollow">EOL</a>). CXF 2.7.x no longer supports Java 5. In order to upgrade
to 2.7.x, you must be using Java 6 (or newer).</p><div class="confluence-info
 rmation-macro confluence-information-macro-information"><span class="aui-icon aui-icon-small
aui-iconfont-info confluence-information-macro-icon"></span><div class="confluence-information-macro-body"><p>There
is one more planned release for the 2.6.x series of CXF. After that, there are no more planned
releases of CXF that will support Java 5. Users are strongly encouraged to start moving to
Java 7 and to start migrating to newer versions of CXF.</p></div></div><p>&#160;</p><h3
id="FAQ-CanCXFrunwithouttheSunreferenceSAAJimplementation?">Can CXF run without the Sun
reference SAAJ implementation?</h3><p>In many cases, CXF can run without an SAAJ
implementation. However, some features such as JAX-WS handlers and WS-Security do require
an SAAJ implementation. By default, CXF ships with the Sun SAAJ implementation, but CXF also
supports axis2-saaj version 1.4.1 as an alternative. When using a Java6 JRE, CXF can also
use the SAAJ implementation built into Java.</p><h3 id="FAQ-Aretherecomm
 ercialofferingsofCXFthatprovideservices,support,andadditionalfeatures?">Are there commercial
offerings of CXF that provide services, support, and additional features?</h3><p>Several
companies provide services, training, documentation, support, etc... on top of CXF. Some of
those companies also produce products that are either based on Apache CXF or include Apache
CXF. See the <a shape="rect" href="commercial-cxf-offerings.html">Commercial CXF Offerings</a>
page for a list of companies and the services they provide.</p><h3 id="FAQ-IsthereanApacheCXFcertificationprogram?">Is
there an Apache CXF certification program?</h3><p>No, but Oracle's <a shape="rect"
class="external-link" href="http://education.oracle.com/pls/web_prod-plq-dad/db_pages.getpage?page_id=41&amp;p_exam_id=1Z0_862"
rel="nofollow">SCDJWS</a> certification covers the web services stack and related
areas. Note, that the popular SCJP certification is a prerequisite to the SCDJWS. Also, check
out the <a shape="rect" class=
 "external-link" href="http://www.coderanch.com/forums/f-80/java-Web-Services-SCDJWS" rel="nofollow">SCDJWS
Forum</a> at the Java Ranch for healthy discussions in regards to the certification.
Study notes can be found at <a shape="rect" class="external-link" href="http://java.boot.by/scdjws5-guide/"
rel="nofollow">SCDJWS 5.0 Study Guide</a>, <a shape="rect" class="external-link"
href="http://en.wikibooks.org/wiki/Sun_Certified_Web_Services_Developer_Certification" rel="nofollow">WikiBooks</a>
and <a shape="rect" class="external-link" href="http://www.coderanch.com/how-to/content/Exam-Objectives-5.pdf"
rel="nofollow">Ivan A. Krizsan Study Notes</a>. Java Ranch also provides and information
<a shape="rect" class="external-link" href="http://www.coderanch.com/how-to/java/ScdjwsLinks"
rel="nofollow">page</a> in regards to the certification.</p><h2 id="FAQ-JAX-WSRelated">JAX-WS
Related</h2><h3 id="FAQ-Thepartsinmygeneratedwsdlhavenamesoftheform&quot;arg0&quot;,&quot;arg1&quot;,...Whydon't
 theparts(andJavageneratedfromthem)usetheniceparameternamesItypedintotheinterfacedefinition?">The
parts in my generated wsdl have names of the form "arg0", "arg1", ... Why don't the parts
(and Java generated from them) use the nice parameter names I typed into the interface definition?</h3><p><strong>Official
answer:</strong> The JAX-WS spec (specifically section 3.6.1) mandates that it be generated
this way. To customize the name, you have to use an @WebParam(name = "blah") annotation to
specify better names. (You can use @WebResult for the return value, but you'll only see the
results if you look at the XML.)</p><p><strong>Reason:</strong> One
of the mysteries of java is that abstract methods (and thus interface methods) do NOT get
their parameter names compiled into them even with debug info. Thus, when the service model
is built from an interface, there is no way to determine the names that were using in the
original code.</p><p>If the service is built from a concrete class (inst
 ead of an interface) AND the class was compiled with debug info, we can get the parameter
names. The simple frontend does this. However, this could cause potential problems. For example,
when you go from developement to production, you may turn off debug information (remove -g
from javac flags) and suddenly the application may break since the generated wsdl (and thus
expect soap messages) would change. Thus, the JAX-WS spec writers went the safe route and
mandate that you have to use the @WebParam annotations to specify the more descriptive names.</p><h3
id="FAQ-HowcanIaddsoapheaderstotherequest/response?">How can I add soap headers to the
request/response?</h3><p>There are several ways to do this depending on how your
project is written (code first or wsdl first) and requirements such as portability.</p><ol><li>The
"JAX-WS" standard way to do this is to write a SOAP Handler that will add the headers to the
SOAP message and register the handler on the client/server. This is complete
 ly portable from jax-ws vendor to vendor, but is also more difficult and can have performance
implications. You have to handle the conversion of the JAXB objects to XML yourself. It involves
having the entire soap message in a DOM which breaks streaming. Requires more memory. etc...
However, it doesn't require any changes to wsdl or SEI interfaces.</li><li>JAX-WS
standard "java first" way: if doing java first development, you can just add an extra parameter
to the method and annotate it with @WebParam(header = true). If it's a response header, make
it a Holder and add the mode = Mode.OUT to @WebParam.</li><li>wsdl first way:
you can add elements to the message in the wsdl and then mark them as soap:headers in the
soap:binding section of the wsdl. The wsdl2java tool will generate the @WebParam(header =
true) annotations as above. With CXF, you can also put the headers in their own message (not
the same message as the request/response) and mark them as headers in the soap:binding, but
  you will need to pass the -exsh true flag to wsdl2java to get the paramters generated. This
is not portable to other jax-ws providers. Processing headers from other messages it optional
in the jaxws spec.</li><li>CXF proprietary way: In the context (BindingProvider.getRequestContext()
on client, WebServiceContext on server), you can add a List&lt;org.apache.cxf.headers.Header&gt;
with the key Header.HEADER_LIST. The headers in the list are streamed at the appropriate time
to the wire according to the databinding object found in the Header object. Like option 1,
this doesn't require changes to wsdl or method signatures. However, it's much faster as it
doesn't break streaming and the memory overhead is less.</li></ol><div class="code
panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
+</div><h2 id="FAQ-General">General</h2><h3 id="FAQ-CanCXFrunwithJDK1.8/Java8?">Can
CXF run with JDK 1.8/Java 8?</h3><p>Yes. CXF supports Java 8. The latest 3.x version
is built using JDK 1.8.</p><h3 id="FAQ-CanCXFrunwithJDK1.7/Java7?">Can CXF run
with JDK 1.7/Java 7?</h3><p>Yes. CXF supports Java 7. Since Java 7 contains the
2.2.x versions of both JAXB and JAX-WS API jars, using CXF with Java 7 is much easier than
with Java 6.</p><div class="confluence-information-macro confluence-information-macro-information"><span
class="aui-icon aui-icon-small aui-iconfont-info confluence-information-macro-icon"></span><div
class="confluence-information-macro-body"><p>CXF 3.2 no longer supports Java 7 and
requires Java 8 or newer. Users are strongly encouraged to start moving to Java 8.</p></div></div><h3
id="FAQ-CanCXFrunwithJDK1.6?">Can CXF run with JDK 1.6?</h3><p>JDK 1.6 incorporates
the JAXB reference implementation. However, it incorporates an old version of the RI. CXF
does not support th
 is version. As of 1.6_04, this is easy to deal with: you must put the versions of JAXB RI
(the 'impl' and 'xjc' jars) that we include with CXF in your classpath. As of this writing,
these are version 2.2.10.</p><div class="confluence-information-macro confluence-information-macro-information"><span
class="aui-icon aui-icon-small aui-iconfont-info confluence-information-macro-icon"></span><div
class="confluence-information-macro-body"><p>CXF 3.1 no longer supports Java 6 and
requires Java 7 or newer.</p></div></div><h3 id="FAQ-CanCXFrunwithJDK1.5?">Can
CXF run with JDK 1.5?</h3><p>Yes for CXF 2.6.x and older. Keep in mind though
that Java 2 SE 5.0 with JDK 1.5 has reached end of life (<a shape="rect" class="external-link"
href="http://www.oracle.com/technetwork/java/eol-135779.html" rel="nofollow">EOL</a>).
CXF 2.7.x no longer supports Java 5. In order to upgrade to 2.7.x, you must be using Java
6 (or newer).</p><div class="confluence-information-macro confluence-information-macro-in
 formation"><span class="aui-icon aui-icon-small aui-iconfont-info confluence-information-macro-icon"></span><div
class="confluence-information-macro-body"><p>There are no more planned releases for
the 2.6.x series of CXF that will support Java 5. Users are strongly encouraged to start moving
to Java 7 and to start migrating to newer versions of CXF.</p></div></div><p>&#160;</p><h3
id="FAQ-CanCXFrunwithouttheSunreferenceSAAJimplementation?">Can CXF run without the Sun
reference SAAJ implementation?</h3><p>In many cases, CXF can run without an SAAJ
implementation. However, some features such as JAX-WS handlers and WS-Security do require
an SAAJ implementation. By default, CXF ships with the Sun SAAJ implementation, but CXF also
supports axis2-saaj version 1.4.1 as an alternative. When using a Java6 JRE, CXF can also
use the SAAJ implementation built into Java.</p><h3 id="FAQ-AretherecommercialofferingsofCXFthatprovideservices,support,andadditionalfeatures?">Are
there commercial offeri
 ngs of CXF that provide services, support, and additional features?</h3><p>Several
companies provide services, training, documentation, support, etc... on top of CXF. Some of
those companies also produce products that are either based on Apache CXF or include Apache
CXF. See the <a shape="rect" href="commercial-cxf-offerings.html">Commercial CXF Offerings</a>
page for a list of companies and the services they provide.</p><h3 id="FAQ-IsthereanApacheCXFcertificationprogram?">Is
there an Apache CXF certification program?</h3><p>No, but Oracle's <a shape="rect"
class="external-link" href="http://education.oracle.com/pls/web_prod-plq-dad/db_pages.getpage?page_id=41&amp;p_exam_id=1Z0_862"
rel="nofollow">SCDJWS</a> certification covers the web services stack and related
areas. Note, that the popular SCJP certification is a prerequisite to the SCDJWS. Also, check
out the <a shape="rect" class="external-link" href="http://www.coderanch.com/forums/f-80/java-Web-Services-SCDJWS"
rel="nofollow"
 >SCDJWS Forum</a> at the Java Ranch for healthy discussions in regards to the certification.
Study notes can be found at <a shape="rect" class="external-link" href="http://java.boot.by/scdjws5-guide/"
rel="nofollow">SCDJWS 5.0 Study Guide</a>, <a shape="rect" class="external-link"
href="http://en.wikibooks.org/wiki/Sun_Certified_Web_Services_Developer_Certification" rel="nofollow">WikiBooks</a>
and <a shape="rect" class="external-link" href="http://www.coderanch.com/how-to/content/Exam-Objectives-5.pdf"
rel="nofollow">Ivan A. Krizsan Study Notes</a>. Java Ranch also provides and information
<a shape="rect" class="external-link" href="http://www.coderanch.com/how-to/java/ScdjwsLinks"
rel="nofollow">page</a> in regards to the certification.</p><h2 id="FAQ-JAX-WSRelated">JAX-WS
Related</h2><h3 id="FAQ-Thepartsinmygeneratedwsdlhavenamesoftheform&quot;arg0&quot;,&quot;arg1&quot;,...Whydon'ttheparts(andJavageneratedfromthem)usetheniceparameternamesItypedintotheinterfacedefinition?">The
pa
 rts in my generated wsdl have names of the form "arg0", "arg1", ... Why don't the parts (and
Java generated from them) use the nice parameter names I typed into the interface definition?</h3><p><strong>Official
answer:</strong> The JAX-WS spec (specifically section 3.6.1) mandates that it be generated
this way. To customize the name, you have to use an @WebParam(name = "blah") annotation to
specify better names. (You can use @WebResult for the return value, but you'll only see the
results if you look at the XML.)</p><p><strong>Reason:</strong> One
of the mysteries of java is that abstract methods (and thus interface methods) do NOT get
their parameter names compiled into them even with debug info. Thus, when the service model
is built from an interface, there is no way to determine the names that were using in the
original code.</p><p>If the service is built from a concrete class (instead of
an interface) AND the class was compiled with debug info, we can get the parameter names.
Th
 e simple frontend does this. However, this could cause potential problems. For example, when
you go from developement to production, you may turn off debug information (remove -g from
javac flags) and suddenly the application may break since the generated wsdl (and thus expect
soap messages) would change. Thus, the JAX-WS spec writers went the safe route and mandate
that you have to use the @WebParam annotations to specify the more descriptive names.</p><h3
id="FAQ-HowcanIaddsoapheaderstotherequest/response?">How can I add soap headers to the
request/response?</h3><p>There are several ways to do this depending on how your
project is written (code first or wsdl first) and requirements such as portability.</p><ol><li>The
"JAX-WS" standard way to do this is to write a SOAP Handler that will add the headers to the
SOAP message and register the handler on the client/server. This is completely portable from
jax-ws vendor to vendor, but is also more difficult and can have performance impli
 cations. You have to handle the conversion of the JAXB objects to XML yourself. It involves
having the entire soap message in a DOM which breaks streaming. Requires more memory. etc...
However, it doesn't require any changes to wsdl or SEI interfaces.</li><li>JAX-WS
standard "java first" way: if doing java first development, you can just add an extra parameter
to the method and annotate it with @WebParam(header = true). If it's a response header, make
it a Holder and add the mode = Mode.OUT to @WebParam.</li><li>wsdl first way:
you can add elements to the message in the wsdl and then mark them as soap:headers in the
soap:binding section of the wsdl. The wsdl2java tool will generate the @WebParam(header =
true) annotations as above. With CXF, you can also put the headers in their own message (not
the same message as the request/response) and mark them as headers in the soap:binding, but
you will need to pass the -exsh true flag to wsdl2java to get the paramters generated. This
is not
  portable to other jax-ws providers. Processing headers from other messages it optional in
the jaxws spec.</li><li>CXF proprietary way: In the context (BindingProvider.getRequestContext()
on client, WebServiceContext on server), you can add a List&lt;org.apache.cxf.headers.Header&gt;
with the key Header.HEADER_LIST. The headers in the list are streamed at the appropriate time
to the wire according to the databinding object found in the Header object. Like option 1,
this doesn't require changes to wsdl or method signatures. However, it's much faster as it
doesn't break streaming and the memory overhead is less.</li></ol><div class="code
panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
 <pre class="brush: java; gutter: false; theme: Default" style="font-size:12px;">List&lt;Header&gt;
headers = new ArrayList&lt;Header&gt;();
 Header dummyHeader = new Header(new QName("uri:org.apache.cxf", "dummy"), "decapitated",
                                 new JAXBDataBinding(String.class));

Modified: websites/production/cxf/content/release-management.html
==============================================================================
--- websites/production/cxf/content/release-management.html (original)
+++ websites/production/cxf/content/release-management.html Wed Sep 13 19:57:20 2017
@@ -109,7 +109,7 @@ Apache CXF -- Release Management
          <td height="100%">
            <!-- Content -->
            <div class="wiki-content">
-<div id="ConfluenceContent"><h2 id="ReleaseManagement-Deployingsnapshots">Deploying
snapshots</h2><p>Snapshots are automatically deployed every night to the Nexus
snapshot repository at <a shape="rect" class="external-link" href="https://repository.apache.org/content/groups/snapshots-group/">https://repository.apache.org/content/groups/snapshots-group/</a>
. There is no need to manually deploy snapshots anymore.</p><h2 id="ReleaseManagement-Maintainingafixesbranch">Maintaining
a fixes branch</h2><p>dkulp: I'm adding this section to document what worked for
ME when maintaining the 2.7.x-fixes branch for the 2.7.x releases. Each Release Manager may
have their own style or tools or whatever. This is not a "set in stone" type thing.</p><p>Basically,
almost all development and fixes and such are usually done by the various developers right
on master. Thus, the main job of the fixes branch maintainer is to triage the commits on master
and merge pure fixes to the fixes branches, resolve co
 nflicts, run the tests, and periodically deploy snapshots. For the most part, when things
go well, it doesn't take too much time or effort. An hour or two every couple days is about
it.</p><p>To set up, you'll want to:</p><ol><li>use git branch
to make a branch.</li><li>On the branch, create a .gitmergeinfo file with a single
line of "origin/master" to say the branch will be merging from there.</li></ol><p><span
style="background-color: transparent;line-height: 1.4285715;">In trunk/bin, there is a
DoMerges.java program that assists in the merging. If the branch is setup with .gitmergeinfo,
if you run it from the root directory of the checkout, it will prompt for every commit on
master to see if you want to "Merge" it, "Block" it, or "Ignore" it. It displays the commit
log first so you can see what was involved. You can also check the </span> <a shape="rect"
class="external-link" href="http://www.nabble.com/cxf-commits-f23851.html" rel="nofollow"
style="background-color: transparent;
 line-height: 1.4285715;">cxf-commits</a> <span style="background-color: transparent;line-height:
1.4285715;"> archive to see the full details of the commit to help decide what action to
take. If you select "Merge", it will merge the change and then prompt before committing. That
will allow you to look at the merge and resolve any conflicts. (or even revert it if you didn't
mean to hit Merge)</span></p><h2 id="ReleaseManagement-Performingarelease">Performing
a release</h2><p>The first step is to update the release_notes.txt in the distribution/src/main/release.
This file's JIRA list of solved Bugs, Improvements, etc. can be obtained from the <a shape="rect"
class="external-link" href="https://issues.apache.org/jira/browse/CXF#selectedTab=com.atlassian.jira.plugin.system.project%3Aroadmap-panel">"Road
Map" JIRA tab</a>, selecting the desired version's Release Notes, and then the Configure
Release Notes button (choose Text output).</p><div class="confluence-information-macro
confluence
 -information-macro-note"><span class="aui-icon aui-icon-small aui-iconfont-warning
confluence-information-macro-icon"></span><div class="confluence-information-macro-body"><p>Don't
manually update the POM versions from X.Y.Z-SNAPSHOT to X.Y.Z, the Maven Release Plugin commands
below will automatically take care of that. Also, prior to performing the release you'll need
to have your Apache LDAP information configured in your Maven settings.xml file:</p><div
class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent
pdl">
+<div id="ConfluenceContent"><h2 id="ReleaseManagement-Deployingsnapshots">Deploying
snapshots</h2><p>Snapshots are automatically deployed every night to the Nexus
snapshot repository at <a shape="rect" class="external-link" href="https://repository.apache.org/content/groups/snapshots-group/">https://repository.apache.org/content/groups/snapshots-group/</a>
. There is no need to manually deploy snapshots anymore.</p><h2 id="ReleaseManagement-Maintainingafixesbranch">Maintaining
a fixes branch</h2><p>dkulp: I'm adding this section to document what worked for
ME when maintaining the 2.7.x-fixes branch for the 2.7.x releases. Each Release Manager may
have their own style or tools or whatever. This is not a "set in stone" type thing.</p><p>Basically,
almost all development and fixes and such are usually done by the various developers right
on master. Thus, the main job of the fixes branch maintainer is to triage the commits on master
and merge pure fixes to the fixes branches, resolve co
 nflicts, run the tests, and periodically deploy snapshots. For the most part, when things
go well, it doesn't take too much time or effort. An hour or two every couple days is about
it.</p><p>To set up, you'll want to:</p><ol><li>use git branch
to make a branch.</li><li>On the branch, create a .gitmergeinfo file with a single
line of "origin/master" to say the branch will be merging from there.</li></ol><p><span
style="background-color: transparent;line-height: 1.4285715;">In trunk/bin, there is a
DoMerges.java program that assists in the merging. If the branch is setup with .gitmergeinfo,
if you run it from the root directory of the checkout, it will prompt for every commit on
master to see if you want to "Merge" it, "Block" it, or "Ignore" it. It displays the commit
log first so you can see what was involved. You can also check the </span> <a shape="rect"
class="external-link" href="https://lists.apache.org/list.html?commits@cxf.apache.org">cxf-commits</a>
<span style="background-
 color: transparent;line-height: 1.4285715;"> archive to see the full details of the commit
to help decide what action to take. If you select "Merge", it will merge the change and then
prompt before committing. That will allow you to look at the merge and resolve any conflicts.
(or even revert it if you didn't mean to hit Merge)</span></p><h2 id="ReleaseManagement-Performingarelease">Performing
a release</h2><p>The first step is to update the release_notes.txt in the distribution/src/main/release.
This file's JIRA list of solved Bugs, Improvements, etc. can be obtained from the <a shape="rect"
class="external-link" href="https://issues.apache.org/jira/browse/CXF#selectedTab=com.atlassian.jira.plugin.system.project%3Aroadmap-panel">"Road
Map" JIRA tab</a>, selecting the desired version's Release Notes, and then the Configure
Release Notes button (choose Text output).</p><div class="confluence-information-macro
confluence-information-macro-note"><span class="aui-icon aui-icon-small aui
 -iconfont-warning confluence-information-macro-icon"></span><div class="confluence-information-macro-body"><p>Don't
manually update the POM versions from X.Y.Z-SNAPSHOT to X.Y.Z, the Maven Release Plugin commands
below will automatically take care of that. Also, prior to performing the release you'll need
to have your Apache LDAP information configured in your Maven settings.xml file:</p><div
class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent
pdl">
 <pre class="brush: java; gutter: false; theme: Default" style="font-size:12px;">...
 &lt;server&gt;                                                                
    &lt;id&gt;apache.releases.https&lt;/id&gt;



Mime
View raw message