CMDBuild Forum

Archi Plugin for CMDBuild

Hi,

I have successfully installed CMDBuild and connected Archi (the opensource Enterprise Architecture tool) by exporting an Archi model in to CMDBuild using the plugin created by University of Bologna; https://bitbucket.org/bompani/cmdbuild-unibo/downloads.

I can now import the CMDBuild model back in to Archi successfully making CMDBuild a database/repository and allowing me to use Archi as an EA Team modelling tool.

The main issue I am facing is that Archi does not seem to sync changes made to the model back to CMDBuild and changes others have made back to Archi without using the import/export function.  And if changes are out of synch the exporting fails.

I must have something misconfigured as I am sure the Archi plugin is supposed to provide a Team Synchronising capability.

Does anyone have any experience with this plugin and getting it to work in a multi-user environment?

Many Thanks

Hi, I haven't even come so far..
 
I've installed the latest cmdbuild in my Mac and added the archimate classes (class.xsc and domain.xsd) and I can login and create Archimate objects in cmdbuild.
I also installed the cmdbuild-plugin in the latest Archi, but as soon I'm trying to export from Archi, I got this error message: CMDB export aborted, reason:  java.lang.reflect.InvocationTargetException
 
Any clue?
 
Previously Paul wrote:

Hi,

I have successfully installed CMDBuild and connected Archi (the opensource Enterprise Architecture tool) by exporting an Archi model in to CMDBuild using the plugin created by University of Bologna; https://bitbucket.org/bompani/cmdbuild-unibo/downloads.

I can now import the CMDBuild model back in to Archi successfully making CMDBuild a database/repository and allowing me to use Archi as an EA Team modelling tool.

The main issue I am facing is that Archi does not seem to sync changes made to the model back to CMDBuild and changes others have made back to Archi without using the import/export function.  And if changes are out of synch the exporting fails.

I must have something misconfigured as I am sure the Archi plugin is supposed to provide a Team Synchronising capability.

Does anyone have any experience with this plugin and getting it to work in a multi-user environment?

Many Thanks

 

You need to modify the cmdbf.xml file in your Archi install to point to your server.  It is preconfigured to point to localhost.

 
If you go to Finder->Go (hold down alt)->Library->Application Support->uk.ac.bolton->Archi
 
You will find the file in there.  Modify the file to point to your server and restart Archi.
 
Should work now.

Thanks, I tried that before, but it was my jumping conclusions that was the error… I just assumed that I should add my servername in the CMDB field, but if I just kept http://www.cmdbuild.org, changed cmdbf.xml and added my username and password - it works - brilliant btw

But what is the CMDB field for then...?
 
Mats

I think you can create a number of configs and choose which one you are connecting to from the CMDB dropdown.  But not sure to be honest.

 
So; you have import and export working now?  Have you found any way to sync your model with CMDBuild without having to constantly export/import the model?  
 
It doesn't seem workable doing that all the time and causes issues if multiple people make changes and then export their changes back.
 
Be good to know what options you see in Archi for synchronising with CMDBuild?  Any Team/Synchronise options?  Hoping I am missing something.
 
Paul
Yes, it's up an running, you're  probably right about the drop down, it seems to be some kind of configuration, though I did a quick test without any success, e.g. tried to rename http://www.cmdbuild.com and use my own instance.
 
Here's my "log"" so far:
- Export Archi model to CMDB - OK
- Export same Archi model with CHANGED objects  to CMDB - get error: REGISTER FAILED (even if I rename the model)
- Export same Archi model with NEW objects  to CMDB - get error: REGISTER FAILED - but the new objects are added to CMDB
- Import Archi from CMDB - OK
- I can't export/import over Internet - maybe some access control, just allowing local network? 
- I noticed that attributes not are exported or imported - that would be brilliant 
 
I don't see that we ever can get a good sync as long as Archi are using files, a future solution I can see, is that Archi are starting to use a database, in that and in CMDB DB, it could be  triggers from/to Archi DB to/from CMDBUILD DB. A short term solution might be to build some kind of batch jobs importing and exporting models with files in between. 
But from a business perspective I would probably  set up a process for this with an Architecture Change Manager between Archi and CMDB to approve/reject and update changes manually.
 
Nevertheless, I think Archi, CMDB and this plugin already are useful and has huge possibility in the future and I'm looking forward to next releases.
 
Mats 

If you want to post your cmdbf.xml file and the url of the CMDBuild server you are using I can check it against my settings.

 
I have import and export working including new objects and changes to objects.  No errors for registering etc...
 
The easy way to check if it is working is to take the full url out of your cmdbf.xml file for the query service, registration WSDL and registration service and just paste the urls into a browser to make sure the config file is configured correctly to connect to the services. 
 
The main problem is that the import/export it will not work in multi-user mode as changes made out of sync cause an error.  Can you confirm that you see no menu options other than import/export?  No button for sync/team settings on the main Archi menus?
 
Paul

Currently the team/synchronise aspect of the plugin is only sketched:

it's implemented through a form, based on EMF-Compare, that is shown when you import a model from CMDBuild, selecting an existing Archi Model

in the first combobox of the import form.

 

Luca

Hi, 


I'm looking to find a forum or similar for this plugin, but haven't found any, so I continue with this thread.
I have tested the plugin for a period now and I'm very exited about it and can see a very high potential in combination with cmdbuild.
I'm not so familiar with cmdbuild, so this could be a user error, but one major question/issue I have is regarding the relation graph. When I mark a specific object (code) and click relation graph I only see relations between classes and not the object (codes), e.g. I want to see how the application services are related to each other and to other objects, but I can only see how a number of application services are connected to other Archimate classes 
 
Is there any setting/trick/solution for this?
 
Mats

Hi, we are glad to know that the combined use of Arches and CMDBuild seem interesting to you.

The CMDBuild Relation Graph shows the relationship between a card and another card, but if these are many, it groups them in a single element and it seems that the relationship are with the class.
Next year (2014) we will rewrite the Relations Graph ( http://www.cmdbuild.org/en/progetto/roadmap ) with latest technologies and new features that will allow you to:
  • select the "domains" to display
  • highlight dependencies between elements of the graph
  • explore cluster of elements normally not diplayed because of their quantity
However, we are checking these days if some CMDBuild users with whom we are in contact can contribute to the of development costs, and in that case we would start this work at the end of this year.

CMDBuild Team
Hi Mat,1.  
I followed https://bitbucket.org/bompani/cmdbuild-unibo/overview
 
 but skip the Archi Build step1-9 since I can download the Archi build from the Archi download site http://www.archimatetool.com/download
 
  Question: Please let me know if I need to do step1-9 to build Archi. I hope NOT because I can get the pre-build version.
 
2. After downloaded Arch 2.7.1 and installed Archi (I also tried with older Arch2.6.1), 
3. I I skipped the Compiliing cmdbuild-unibo part and downloaded https://bitbucket.org/bompani/cmdbuild-unibo/downloads
 
 (cmdbuild-archimate.zip
 
) . I then unzipped ALL jars into the Archi's plugins directory.  
  Question: Do I need to compile the cmdbuild-archimate zip myself. Currently I downloaded pre-build from the site above.
 
4. I started Archi and open a Model, I cannot see Edit->Preference->CMDB Import or Export options.
  Am I on the right path?
 
 
Inline image 2
Inline image 1
Regards
 
Seri
 
Previously Mats wrote:
Yes, it's up an running, you're  probably right about the drop down, it seems to be some kind of configuration, though I did a quick test without any success, e.g. tried to rename http://www.cmdbuild.com and use my own instance.
 
Here's my "log"" so far:
- Export Archi model to CMDB - OK
- Export same Archi model with CHANGED objects  to CMDB - get error: REGISTER FAILED (even if I rename the model)
- Export same Archi model with NEW objects  to CMDB - get error: REGISTER FAILED - but the new objects are added to CMDB
- Import Archi from CMDB - OK
- I can't export/import over Internet - maybe some access control, just allowing local network? 
- I noticed that attributes not are exported or imported - that would be brilliant 
 
I don't see that we ever can get a good sync as long as Archi are using files, a future solution I can see, is that Archi are starting to use a database, in that and in CMDB DB, it could be  triggers from/to Archi DB to/from CMDBUILD DB. A short term solution might be to build some kind of batch jobs importing and exporting models with files in between. 
But from a business perspective I would probably  set up a process for this with an Architecture Change Manager between Archi and CMDB to approve/reject and update changes manually.
 
Nevertheless, I think Archi, CMDB and this plugin already are useful and has huge possibility in the future and I'm looking forward to next releases.
 
Mats 

 

Hi there,
 
  I have the Archi 2.7.1 and cmdbuild2.1.8 installed and kind of working.  
On Export - I also getting error on Export functions. e.g. (Archi elements are populated in CMDBuild and can be view via web site.)
org.cmdbuild.archimate.CMDBExporter
   (mdrId: http://www.bolton.ac.uk/archimate, localId: 2df20fc1-43fb-4faf-829e-1b05a560b0bf): com.archimatetool.model.impl.ArchimateDiagramModel@e823be (id: 2df20fc1-43fb-4faf-829e-1b05a560b0bf, name: Map View, documentation: , connectionRouterType: 0) (viewpoint: 0) [org.cmdbuild.cmdbf.client.model.cmdbf.impl.DeclinedTypeImpl@1001f00 (reason: [null])]
   (MdrId: http://www.bolton.ac.uk/archimate, localId: 4e0151ef-810e-469b-bc7c-d0b28ae7b205): @ com.archimatetool.model.impl.ArchimateDiagramModel e624eb (id: 4e0151ef-810e-469b- bc7c-d0b28ae7b205, name: Default View, documentation:, connectionRouterType: 0) (viewpoint: 0) [org.cmdbuild.cmdbf.client.model.cmdbf.impl.DeclinedTypeImpl @ f37502 (reason: [null])]
   (MdrId: http://www.bolton.ac.uk/archimate, localId: 03949c09-6002-491e-aeb7-3c2b99bdc003): com.archimatetool.model.impl.ArchimateDiagramModel @ 1820163 (id: 03949c09-6002-491e- aeb7-3c2b99bdc003, name: Simplified but complementing, documentation:, connectionRouterType: 0) (viewpoint: 0) [org.cmdbuild.cmdbf.client.model.cmdbf.impl.DeclinedTypeImpl @ 18704f4 (reason: [null])]
   (MdrId: http://www.bolton.ac.uk/archimate, localId: 93588fe8-a0fa-431f-a176-d11729cbb1a0): @ com.archimatetool.model.impl.ArchimateDiagramModel 166b8ac (id: 93588fe8-a0fa-431f- a176-d11729cbb1a0, name: Business layer straightforward, documentation:, connectionRouterType: 0) (viewpoint: 0) [org.cmdbuild.cmdbf.client.model.cmdbf.impl.DeclinedTypeImpl @ 156426b (reason: [null])]
 
 On Import: it does not seem to work... I am getting error.
Getting error also on Import
Operation not found: OclUndefined.safeLocalId()
 
! ENTRY archimate cmdbuild-plugin-4 0 2014-03-25 20:45:28.708
!MESSAGE Operation not found: OclUndefined.safeLocalId()
!STACK 0
org.eclipse.m2m.atl.engine.emfvm.VMException: Operation not found: OclUndefined.
safeLocalId()
        at archiId#4(cmdbuild2archi.atl[19:61-19:117])
                local variables: self = IN! <unnamed>
        at __applyNode#36(cmdbuild2archi.atl[54:10-54:21])
                local variables: self=cmdbuild2archi : ASMModule, link=Transient
Link {rule = Node, sourceElements = {c =  (instanceId: 23 ,records:  ( (Node)))}
, targetElements = {p4 = com.archimatetool.model.impl.Property@5f433f9c (key: ,
value: ), p3 = com.archimatetool.model.impl.Property@38054ba0 (key: , value: ),
p2 = com.archimatetool.model.impl.Property@63a8121b (key: , value: ), p1 = com.a
rchimatetool.model.impl.Property@2f3cddba (key: , value: ), a = com.archimatetoo
l.model.impl.Node @ 4500f690 (id: 084bb549, name:, documentation:)}, variables =
 {r =  ( (Node)), cmdbId =  (mdrId: http://www.cmdbuild.org , localId: 23)}}, c=I
N! <unnamed>, A = OUT!, P1 = OUT! <unnamed>, P2 = OUT! <unnamed>, P3 = OUT! <unnamed>, P4 = OU
T! <unnamed>, R = IN! <unnamed>, CmdbId = IN! <unnamed>
        at __exec__#328(cmdbuild2archi.atl)
                local variables: self=cmdbuild2archi : ASMModule, e=TransientLin
k {rule = Node, sourceElements = {c =  (instanceId: 23 ,records:  ( (Node)))}, t
argetElements = {p4 = com.archimatetool.model.impl.Property@5f433f9c (key: , val
ue: ), p3 = com.archimatetool.model.impl.Property@38054ba0 (key: , value: ), p2
= com.archimatetool.model.impl.Property@63a8121b (key: , value: ), p1 = com.arch
imatetool.model.impl.Property@2f3cddba (key: , value: ), a = com.archimatetool.m
odel.impl.Node @ 4500f690 (id: 084bb549, name:, documentation:)}, variables = {r
 =  ( (Node)), cmdbId =  (mdrId: http://www.cmdbuild.org , localId: 23)}}
        at main#33(cmdbuild2archi.atl)
                local variables: self=cmdbuild2archi : ASMModule
 
What should I do next?
 
Regards
Series
 
Previously Tecnoteca wrote:

Hi, we are glad to know that the combined use of Arches and CMDBuild seem interesting to you.

The CMDBuild Relation Graph shows the relationship between a card and another card, but if these are many, it groups them in a single element and it seems that the relationship are with the class.
Next year (2014) we will rewrite the Relations Graph ( http://www.cmdbuild.org/en/progetto/roadmap ) with latest technologies and new features that will allow you to:
  • select the "domains" to display
  • highlight dependencies between elements of the graph
  • explore cluster of elements normally not diplayed because of their quantity
However, we are checking these days if some CMDBuild users with whom we are in contact can contribute to the of development costs, and in that case we would start this work at the end of this year.CMDBuild Team


 

Hi Series,
I found a bug in the archi2cmdbuild.atl transformation, can you download the latest version of cmdbuild-archimate plugin from https://bitbucket.org/bompani/cmdbuild-unibo/downloads and retry? To use the latest ATL transformations you have to delete the Archi settings folder too (@user.home/uk.ac.bolton/Archi on linux, @user.home/Application Data/uk.ac.bolton/Archi on windows, @user.home/Library/Application Support/uk.ac.bolton/Archi on mac)

 

Regards
Luca

The plug-in is no more available...
Can you retrieve the files? 
Thank you so much!
Previously Luca wrote:

Hi Series,
I found a bug in the archi2cmdbuild.atl transformation, can you download the latest version of cmdbuild-archimate plugin from https://bitbucket.org/bompani/cmdbuild-unibo/downloads and retry? To use the latest ATL transformations you have to delete the Archi settings folder too (@user.home/uk.ac.bolton/Archi on linux, @user.home/Application Data/uk.ac.bolton/Archi on windows, @user.home/Library/Application Support/uk.ac.bolton/Archi on mac)

 

Regards
Luca

 

Hi, no one have idea about the plug-in new location?

 

Previously dario wrote:
The plug-in is no more available...
Can you retrieve the files? 
Thank you so much!
Previously Luca wrote:

Hi Series,
I found a bug in the archi2cmdbuild.atl transformation, can you download the latest version of cmdbuild-archimate plugin from https://bitbucket.org/bompani/cmdbuild-unibo/downloads and retry? To use the latest ATL transformations you have to delete the Archi settings folder too (@user.home/uk.ac.bolton/Archi on linux, @user.home/Application Data/uk.ac.bolton/Archi on windows, @user.home/Library/Application Support/uk.ac.bolton/Archi on mac)

 

Regards
Luca

 

 

Unfortunately the author at the time stopped the project development.
He has provided to us the current sources, and we have made them available at this link for those interested: http://www.cmdbuild.org/file/plugin-archi/
Best regards.
CMDBuild Team

 

 

 

Previously Tecnoteca wrote:

Unfortunately the author at the time stopped the project development.
He has provided to us the current sources, and we have made them available at this link for those interested: http://www.cmdbuild.org/file/plugin-archi/
Best regards.
CMDBuild Team

 

 

I tried to build the package but Maven returned me the following (I'm posting only the end of the build process)
I think it woulfd be better to have the built packages, if possible
Thank you!

[INFO] Reactor Summary:
[INFO]
[INFO] CMDB Unibo opensource .............................. SUCCESS [  0.839 s]
[INFO] target-platform .................................... SUCCESS [  1.281 s]
[INFO] CMDB thirdparty libraries bundle ................... SUCCESS [ 29.860 s]
[INFO] CMDB thirdparty plugins library .................... SUCCESS [03:39 min]
[INFO] CMDBf client ....................................... SUCCESS [ 24.927 s]
[INFO] CMDB monitoring .................................... SUCCESS [ 20.625 s]
[INFO] CMDBuild DMS CMIS Alfresco ......................... FAILURE [  0.945 s]
[INFO] CMDBuild DMS CMIS Nuxeo ............................ SKIPPED
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 05:53 min
[INFO] Finished at: 2016-09-12T16:20:10+02:00
[INFO] Final Memory: 119M/495M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal on project cmdbuild-dms-cmis-alfresco: Could not resolve dependencies for project it.unibo.cmdb:cmdbuild-dms-cmis-alfresco:jar:1.0.1-SNAPSHOT: Could not find artifact org.cmdbuild:cmdbuild-dms-cmis:jar:2.4.1-SNAPSHOT -> [Help 1]
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal on project cmdbuild-dms-cmis-alfresco: Could not resolve dependencies for project it.unibo.cmdb:cmdbuild-dms-cmis-alfresco:jar:1.0.1-SNAPSHOT: Could not find artifact org.cmdbuild:cmdbuild-dms-cmis:jar:2.4.1-SNAPSHOT
        at org.apache.maven.lifecycle.internal.LifecycleDependencyResolver.getDependencies(LifecycleDependencyResolver.java:221)
        at org.apache.maven.lifecycle.internal.LifecycleDependencyResolver.resolveProjectDependencies(LifecycleDependencyResolver.java:127)
        at org.apache.maven.lifecycle.internal.MojoExecutor.ensureDependenciesAreResolved(MojoExecutor.java:245)
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:199)
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
        at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
        at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:116)
        at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:80)
        at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:51)
        at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:128)
        at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:307)
        at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:193)
        at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:106)
        at org.apache.maven.cli.MavenCli.execute(MavenCli.java:863)
        at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:288)
        at org.apache.maven.cli.MavenCli.main(MavenCli.java:199)
        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.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289)
        at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229)
        at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415)
        at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356)
Caused by: org.apache.maven.project.DependencyResolutionException: Could not resolve dependencies for project it.unibo.cmdb:cmdbuild-dms-cmis-alfresco:jar:1.0.1-SNAPSHOT: Could not find artifact org.cmdbuild:cmdbuild-dms-cmis:jar:2.4.1-SNAPSHOT
        at org.apache.maven.project.DefaultProjectDependenciesResolver.resolve(DefaultProjectDependenciesResolver.java:211)
        at org.apache.maven.lifecycle.internal.LifecycleDependencyResolver.getDependencies(LifecycleDependencyResolver.java:195)
        ... 23 more
Caused by: org.eclipse.aether.resolution.DependencyResolutionException: Could not find artifact org.cmdbuild:cmdbuild-dms-cmis:jar:2.4.1-SNAPSHOT
        at org.eclipse.aether.internal.impl.DefaultRepositorySystem.resolveDependencies(DefaultRepositorySystem.java:384)
        at org.apache.maven.project.DefaultProjectDependenciesResolver.resolve(DefaultProjectDependenciesResolver.java:205)
        ... 24 more
Caused by: org.eclipse.aether.resolution.ArtifactResolutionException: Could not find artifact org.cmdbuild:cmdbuild-dms-cmis:jar:2.4.1-SNAPSHOT
        at org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolve(DefaultArtifactResolver.java:444)
        at org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolveArtifacts(DefaultArtifactResolver.java:246)
        at org.eclipse.aether.internal.impl.DefaultRepositorySystem.resolveDependencies(DefaultRepositorySystem.java:367)
        ... 25 more
Caused by: org.eclipse.aether.transfer.ArtifactNotFoundException: Could not find artifact org.cmdbuild:cmdbuild-dms-cmis:jar:2.4.1-SNAPSHOT
        at org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolve(DefaultArtifactResolver.java:434)
        ... 27 more
[ERROR]
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/DependencyResolutionException
[ERROR]
[ERROR] After correcting the problems, you can resume the build with the command
[ERROR]   mvn <goals> -rf :cmdbuild-dms-cmis-alfresco

 

I’m sorry, the author has given us only the sources.
CMDBuild Team

 

 

Previously Tecnoteca wrote:

I'm sorry, the author has given us only the sources.
CMDBuild Team

 


Hi, we have gone forward the last explained problem, but we encountered another one: it seems some packages are missinga in source code; they are  it.unibo.cmdb:cmdb-unibo-opensource:pom:1.0.1-SNAPSHOT needed to compile the project it.unibo.cmdb:cmdb-archimate-plugin:1.0.1-SNAPSHOT .

Could you verify with the author, please?

Thank you in advance