This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.

Bug 136983 - REGRESSION: Bpel calls to SQL engine fail
Summary: REGRESSION: Bpel calls to SQL engine fail
Status: NEW
Alias: None
Product: soa
Classification: Unclassified
Component: SQL Project (show other bugs)
Version: 6.x
Hardware: PC All
: P3 blocker (vote)
Assignee: issues@soa
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-06-11 12:06 UTC by siitpe
Modified: 2008-11-19 19:19 UTC (History)
0 users

See Also:
Issue Type: DEFECT
Exception Reporter:


Attachments
Failing NB6.1 Bpel project (167.88 KB, application/x-compressed)
2008-06-12 10:34 UTC, siitpe
Details
Working project with manually corrected SQL and WSDL (96.99 KB, application/x-compressed)
2008-11-19 19:19 UTC, Kirill Sorokin
Details

Note You need to log in before you can comment on or make changes to this bug.
Description siitpe 2008-06-11 12:06:10 UTC
On NB6.1 and Glassfish made simple Bpel with one call to -very- simple SQL module.
SQL module contains one SQL command: SELECT "maxPersonId" = MAX(personId) FROM employees WHERE personId > 0
Composite application constructed fron SQL module works fine.
When calling SQL module from Bpel results following error:
<SOAP-ENV:Fault>
      <faultcode xmlns="">SOAP-ENV:Server</faultcode>
      <faultstring xmlns="">BPCOR-6135:A fault was not handled in the process scope; Fault Name is
{http://docs.oasis-open.org/wsbpel/2.0/process/executable}selectionFailure; Fault Data is null. Sending errors for the
pending requests in the process scope before terminating the process instance</faultstring>
      <faultactor xmlns="">sun-bpel-engine</faultactor>
      <detail xmlns="">
        <detailText>BPCOR-6135:A fault was not handled in the process scope; Fault Name is
{http://docs.oasis-open.org/wsbpel/2.0/process/executable}selectionFailure; Fault Data is null. Sending errors for the
pending requests in the process scope before terminating the process instance
   Caused by: I18N: BPCOR-3023: Selection Failure occurred in
BPEL({http://enterprise.netbeans.org/bpel/BpelModuleMaxPersonGET61ml_2/ProcessBpelmaxPersonIdGET61ml_2}ProcessBpelmaxPersonIdGET61ml_2)
at line 31!
BPCOR-6129:Line Number is 29
BPCOR-6130:Activity Name is Assign2</detailText>
      </detail>
</SOAP-ENV:Fault>

When using NB 6.0.1 both SQL module and BPEL module work fine.
Cannot start using NB 6.1 because of this malfunction in Bpel engine ...

regards 
Mr. Pentti Siitonen
Comment 1 Kirill Sorokin 2008-06-11 13:46:47 UTC
So you're saying that the same exact project works fine in NB 6.0.1? If so, we'd move this issue to the runtime issue
tracking system. 

May I also ask you to attach the project you're working with, so we could use it as a test case? 
Comment 2 siitpe 2008-06-12 10:31:31 UTC
Hi,
No, not exactly the same project, because WSDL file generated by SQL module is different in NB6.1 and NB6.01
from exactly the same sql command file. 
To make operation output parameters match to SQL module output parameters I created different XSD and WSDL into NB6.1
and NB6.01 Bpel projects as well.
So the scenario was: 
- created SQL module, used the same sql command file (.sql) in NB6.01 and NB6.1, generated WSDL, clean and build
- created Composite Application for SQL module, deployed, tested, worked OK in both NB6.01 and NB6.1
- created Bpel module, created XSD and WSDL using WSDL generated by SQL module above (to match variable types)
- created Composite Application for Bpel module, deployed, tested, worked OK in NB6.01 and failed in NB6.1
Error occurs when running test case of Bpel Composite application, so You may be right when suspecting runtime problem.
I am sorry if this forum is wrong but the issue path was Community-Enter issue-Enterprise-Bpel project.

OK, NB6.1 trying to include test projects.

Regards Pentti

Comment 3 siitpe 2008-06-12 10:34:08 UTC
Created attachment 62738 [details]
Failing NB6.1 Bpel project
Comment 4 Kirill Sorokin 2008-11-19 19:17:43 UTC
Sorry for it having taken that long to look at the issue. Th real cause is in the WSDL generated by the SQL SE support
module. According to it, the response structure of the SQL SE call should be:

            <xsd:element name="newSQLResponse">
                <xsd:complexType>
                    <xsd:sequence>
                        <xsd:element maxOccurs="unbounded" ref="record"/>
                    </xsd:sequence>
                </xsd:complexType>
            </xsd:element>
            <xsd:element name="record">
                <xsd:complexType>
                    <xsd:sequence>
                        <xsd:element name="maxPersonId" type="xsd:int"/>
                    </xsd:sequence>
                </xsd:complexType>
            </xsd:element>

While in fact the returned xml is:

    <newSQLResponse xmlns:msgns="http://com.sun.jbi/sqlse/sqlseengine" xmlns="http://com.sun.jbi/sqlse/sqlseengine">
      <maxPersonId>100</maxPersonId>
    </newSQLResponse>

Voila! No 'record' tags. Hence the selectionFailure in BPEL, which means that some XPath failed to evaluate to a value.
Transferring.
Comment 5 Kirill Sorokin 2008-11-19 19:19:39 UTC
Created attachment 73931 [details]
Working project with manually corrected SQL and WSDL