0

When I want to import and load a project in Integration Studio 8.0.1 and double-click on src/main/synapse-config/api/ApiName.xml (after import) it generates a blank page on the Design tab, and in Source tab remains only this:

<?xml version="1.0" encoding="UTF-8"?>
<api context="/api-uri" name="ApiName" xmlns="http://ws.apache.org/ns/synapse">
    <resource faultSequence="" methods="POST" uri-template="/ping">
        <inSequence/>
        <outSequence/>
    </resource>
</api>

(Fortunately the original content remains on the disk)

And I have an error too:

Plug-in: org.wso2.integrationstudio.logging
Severity: Error
Message: Error while generating diagram from source
Stack Trace:

java.lang.IllegalStateException: Cannot modify resource set without a write transaction
    at org.eclipse.emf.transaction.impl.TransactionChangeRecorder.assertWriting(TransactionChangeRecorder.java:349)
    at org.eclipse.emf.transaction.impl.TransactionChangeRecorder.appendNotification(TransactionChangeRecorder.java:303)
    at org.eclipse.emf.transaction.impl.TransactionChangeRecorder.processObjectNotification(TransactionChangeRecorder.java:285)
    at org.eclipse.emf.transaction.impl.TransactionChangeRecorder.notifyChanged(TransactionChangeRecorder.java:241)
    at org.eclipse.emf.common.notify.impl.BasicNotifierImpl.eNotify(BasicNotifierImpl.java:424)
    at org.wso2.integrationstudio.gmf.esb.impl.APIResourceImpl.setFaultSequenceType(APIResourceImpl.java:1170)
    at org.wso2.integrationstudio.gmf.esb.diagram.custom.deserializer.APIDeserializer.createNode(APIDeserializer.java:236)
    at org.wso2.integrationstudio.gmf.esb.diagram.custom.deserializer.APIDeserializer.createNode(APIDeserializer.java:1)
    at org.wso2.integrationstudio.gmf.esb.diagram.custom.deserializer.Deserializer.updateDesign(Deserializer.java:160)
    at org.wso2.integrationstudio.gmf.esb.diagram.part.EsbMultiPageEditor$1.run(EsbMultiPageEditor.java:302)
    at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:40)
    at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:185)
    at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:4928)
    at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:4449)
    at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1158)
    at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338)
    at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1047)
    at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155)
    at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:658)
    at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338)
    at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:557)
    at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:154)
    at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:150)
    at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:137)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:107)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:401)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:657)
    at org.eclipse.equinox.launcher.Main.basicRun(Main.java:594)
    at org.eclipse.equinox.launcher.Main.run(Main.java:1447)
    at org.eclipse.equinox.launcher.Main.main(Main.java:1420)

Session Data:

eclipse.buildId=unknown
java.version=1.8.0_252
java.vendor=AdoptOpenJDK
BootLoader constants: OS=linux, ARCH=x86_64, WS=gtk, NL=en_US
Command-line arguments:  -os linux -ws gtk -arch x86_64

Any idea what to inspect?

Community
  • 1
  • 1
BCsongor
  • 869
  • 7
  • 11

1 Answers1

0

I've found the problem, the faultSequence reference (int the definition) was the problem. Removed the faultSequence="conf:sequences/ApiNameFaultSequence.xml" part, and now the diagram reloads without errors.

<resource faultSequence="conf:sequences/ApiNameFaultSequence.xml" methods="POST" uri-template="/ping">

(ApiNameFaultSequence was created in a separate RegistryResource project)

I recreated the sequence, and I saved to ApiNameConfigs/src/main/synapse-config/sequences, referenced from there and now works fine. The new resource definition looks like:

<resource faultSequence="ApiNameSoapFaultSequence" methods="POST" uri-template="/ping">
BCsongor
  • 869
  • 7
  • 11